我对Perl中的命令行参数有疑问。我不确定是否有人问过这个问题,因为我不确定要搜索什么。
我正在传递一个命令行参数。但我希望它看起来像这样:stepanalyzer --file=glasses.STEP --get=#62296,#3,#883
例如,我可以说--get
。以及如何使用--get
我希望有人能够帮助我。预先感谢!
答案 0 :(得分:6)
要使用的库为Getopt::Long
正如我所说,我需要类似--get="616","718"
因此,使用此库,您可以输入:GetOptions('file=s' => \$file, 'get=s' => \@ary);
'file=s'
方法: --file
之后需要一个字符串。
'get=s'
方法: 同样,现在我们可以在命令行上使用多个--get value
,每个这样的选项将其字符串添加到@ary
。因此,作为问题中要求的以逗号分隔列表的选项是数组中的一个元素,而扩展该选项的一种方法是
@ary = split(/,/, join(',', @ary));
但是还有另一种方式:'get=s@'
。您喜欢什么。