【发布时间】:2019-12-21 02:59:33
【问题描述】:
我正在修改一个 perl 脚本,其中命令行参数的解析如下:
if ($arg eq "-var1") {
$main::variable1 = shift(@arguments)
} elsif ($arg eq "-var2") {
$main::variable2 = shift(@arguments)
} elsif ($arg eq "var3") {
$main::variable3 = shift(@arguments)
} ...
所以有一大堆 elsif 语句来涵盖所有命令行参数。
我现在处于想要多次使用参数“-var2”的情况。
所以我的 main::variable2 应该是一个数组,其中包含使用“-var2”传递的所有值。
我发现使用 Perl::getopt 可以轻松实现 (Perl Getopt Using Same Option Multiple Times)。
但是,我的脚本解析其命令行参数的方式不同。所以我想知道是否可以实现它,而不必更改解析参数的方式。
【问题讨论】:
-
Re "无需更改解析参数的方式。",我不确定您的意思。如果不进行更改,您的脚本将继续执行相同的操作。
标签: perl