perl的预参数处理

来源:互联网 发布:狼人杀记录软件 编辑:程序博客网 时间:2024/06/06 12:25

http://blog.nowans.com/Content/blogger.7e16e6758496d022.html


1、可以使用Getopt::Std模块来实现。

Quotes
use Getopt::Std;
# -v, -D, -o ARG, sets $opt_v, $opt_D, $opt_o
getopts("vDo:");

# -v, -D, -o ARG, sets $args{v}, $args{D}, $args{o}
getopts("vDo:", /%args);


2、或者使用Getopt::Long来允许命名参数:

Quotes
use Getopt::Long;
GetOptions( "verbose" => /$verbose, # --verbose
"Debug" => /$debug, # --Debug
"output=s" => /$output );


3、如果不想对模块有所依赖,那么我们可以自己实现:

Quotes
my $var_name = "";
foreach (@ARGV) {
$var_1=int($_) if $var_name eq "-i" && !/^-/;
$var_2=$_ if $var_name eq "-c" && !/^-/;
$var_name=$_ if /^-/;
}
原创粉丝点击