我有一个现有的Perl程序,它使用Getopt
包和Getopt::Long::Configure
其中permute
一个选项.但是,现在我需要保持用户输入的选项的顺序.有一个选项$RETURN_IN_ORDER
中提到的Long.pm
,但是似乎并没有在任何地方使用的.
当我通过时return_in_order
,我收到以下错误.
getopt的::长:未知配置参数 "return_in_order" 在C:/ Program Files文件/ IBM/RationalSDLC/common/lib目录/ perl5的/ 5.8.6 /的Getopt/Long.pm线1199.
有人可以告诉我这是否得到支持,如果有的话,正确的使用方法?如果没有,我想知道我的其他选择.
谢谢.
我想你想要"require_order"
http://perldoc.perl.org/Getopt/Long.html#Configuring-Getopt%3a%3aLong
你有两个答案指向'require_order',但我认为这些答案都误解了'require_order'和你寻求的东西.
如果未设置'require_order',则可以编写(在命令行上):
-a file -b
其中-a和-b都是简单的选项(不参数).设置'require_order'后,'file'的存在将终止选项,' - b'标志变为'文件名'.
我认为你正在寻找的是一种机制,它允许你告诉'-a'出现在'file'和'-b'之前.我不认为Getopt :: Long支持这一点.事实上,我不知道任何Getopt ::*模块那样做(除了我自己的,未发表的,我有时使用的Getopt :: JLSS).[ 如果您对代码感兴趣,请在Gmail上发送电子邮件,在名字和姓氏之间使用一个点.]
require_order
根据我在这里的手册页,它被称为.:-)