我写了一个脚本,需要从用户那里得到一些参数。 在尝试读取我的脚本参数时遇到问题。
脚本可以使-type
运行函数为一种文件类型,或者可以获取标记-all
以便调用所有文件类型。
my $opt = GetOptions (
'help|h' => \$help,
'type=s' => \$type,
'all' => \$all,
);
我正在考虑用户可以运行的所有错误选项,并在用户时发现
正在运行myscript.pl -type -all
模块将-all
读为-type
字符串。
有什么优雅的方法可以避免这样的事情吗?
谢谢!
-Yair
答案 0 :(得分:3)
允许-type
或-all
,但不能同时允许。或者,移除-all
选项,如果-type
后面跟all
,请将其视为您现在正在尝试处理-all
。
my $opt = GetOptions (
'help|h' => \$help,
'type=s' => \$type,
'all' => sub { $type = "all"; },
);
答案 1 :(得分:2)
使用'type:s'
代替'type=s'
,-type的值将是可选的。优雅?我不知道,但它很有意思。