欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

perl命令行参数怎么捕获? perl 获取命令行参数方法

程序员文章站 2022-03-26 10:51:15
perl命令行参数怎么捕获? perl 获取命令行参数方法,以在windows操作系统为例,当我们在命令行中调用PERL程序的时候,我们往往会跟随一些参数,比如输入文件名,和输出文...

perl命令行参数怎么捕获? perl 获取命令行参数方法,以在windows操作系统为例,当我们在命令行中调用PERL程序的时候,我们往往会跟随一些参数,比如输入文件名,和输出文件名之类的信息。这些信息PERL会将它们存储在@ARGV数组中(和C语言一样)。比如在cmd中输入如下命令:

pp.pl -opcamfile opcamfile.ini -rcfile rcfile.txt -swapfile swapfile.tmp -outfile outfile.txt

PERL会建立一个数组@ARGV=qw/-opcamfile opcamfile.ini -rcfile rcfile.txt -swapfile swapfile.tmp -outfile outfile.txt/;然后我们想把这些信息做何用出就对应的处理数组,从数组中分离我们想要的数据就可以了。如下面的代码所示。shift的默认参数是@ARGV。

while ($#ARGV > -1) {

if ($ARGV[0] =~ /-opcamfile/i){

if ($ARGV[1] !~ /-/) {

$opcamfile = $ARGV[1];

shift;

}

shift;

} elsif ($ARGV[0] =~ /-rcfile/i) {

if ($ARGV[1] !~ /-/) {

$rcfile = $ARGV[1];

shift;

}

shift;

} elsif ($ARGV[0] =~ /-swapfile/i) {

if ($ARGV[1] !~ /-/) {

$swapfile = $AR GV[1];

shift;

}

shift;

} elsif ($ARGV[0] =~ /-outfile/i) {

if ($ARGV[1] !~ /-/) {

$outfile = $ARGV[1];

$outfile =~ s/_sim//g;

shift;

}

shift;

} else {

die 'Unrecognized argument, Exiting...';

}

}