Getopt::Std模块的使用[原创]

Getopt::Std模块的使用[原创]

Getopt::Std模块的使用:

初始设置:  

在程序中加入如下代码:
          use Getopt::Std;
               use vars qw($opt_d $opt_f $opt_p);
               getopts('d:f:p');
               (注意上两行的参数要对应)

[ 解释一下"d:f:p",d和f后有冒号,表示-d,-f后面要跟参数。p后面没有冒号,表示-p后面不带参数。
而且-d,-f后所跟的参数分别赋给变量$opt_d和$opt_f。对于变量$opt_p,若命令行加了-p,则$opt_p=1,否则为0]

举个例子就很清楚了:
vi file.pl

添加如下代码:
use Getopt::Std;
use vars qw($opt_d $opt_f $opt_p);
getopts('d:f:p');

print "\$opt_d =>; $opt_d\n" if $opt_d;
print "\$opt_f =>; $opt_f\n" if $opt_f;
print "\$opt_p =>; $opt_p\n" if $opt_p;

然后在命令行中运行:
perl file.pl -d 20040412 -f louiskoochen -p

可得到下列形式的输出:
$opt_d =>;200040412
$opt_f =>;louiskoochen
$opt_p =>;1

这回大家知道Getopt::Std模块是怎么回事了吧:)
我写得很辛苦的。
不错的说

有了这个模块
可以轻松很多
感谢
我读qmail-scanner源码时正为这个opt_d什么的发愁呢,结果一搜就搜到这儿啦,哈哈,明白了,谢谢!
确实是个不错的好东西,收藏着备用

简单明了,顶一个
不是有个main::GetOptions已经实现这个功能了么?
我晕.
我说我怎么这么眼熟,原来真的是考古帖.
顶一个,写的好。