perl 中的可否定选项
Posted
技术标签:
【中文标题】perl 中的可否定选项【英文标题】:Negatable options in perl 【发布时间】:2021-08-15 15:55:10 【问题描述】:我有一个可否定的选项,定义为 top!。
当命令使用此选项时,例如:command_name -top,向用户打印警告
它的代码sn-p如下:
if ($argstop) print "Warning";
但是,当命令使用否定选项时,例如:command_name -notop,它不会向用户输出相同的警告。
有没有办法为这两种情况获得相同的警告?
【问题讨论】:
【参考方案1】:是的,您可以确定您的选项(以任何一种形式)是否已在命令行上使用。 由于您使用哈希作为选项,因此您可以检查选项 exists:
use warnings;
use strict;
use Getopt::Long qw(GetOptions);
my %args;
GetOptions(\%args, qw(top!));
print "Warning\n" if exists $argstop;
如果您在命令行上使用-top
或-notop
,这将打印Warning
。如果您不使用-top
或-notop
,它将不会打印Warning
。
【讨论】:
以上是关于perl 中的可否定选项的主要内容,如果未能解决你的问题,请参考以下文章