Perl Getopt::Long 多值命令行处理
学习新的技术:Node.js家园一直想学习下Perl命令行选项的处理,今天花了点时间看了下,以下是多值命令选项的方法,使用了Getopt::Long模块。
比如你的命令行选项像下面这样,你将如何取得这些值呢?
command -opt 50 60 70
可以这样:
一:GetOptions("opt=i{3}"=>\@val);
解析:这里的i表示是整形(整数),{3}表示为三个,\@val,把这三个整数保存到val数组中。
use 5.10.0;
GetOptions("opt=i{3}"=>\@val);
say $val;
say $val;
say $val;
运行结果:
C:\Perl>option.pl -opt 50 60 70
60
60
70
相对的i{3}中的i,还有s(表示字符串),f(表示浮点数)等。
但是如果你不知道 -opt 后面到底会有多少个值时,就得用下面这样的方法:
GetOptions("opt=i{,}"=>\@val);
for(0..$#val){
say $val[$_];
}
如果你确定你要2到4个值,那么可以像下面这样:
GetOptions("opt=i{2,4}"=>\@val);
先这样,有事中...
页:
[1]