使用Getopt::Std解析命令行中的选项

ZDNet软件频道 时间:2004-02-23 作者:Builder.com |  我要评论()
本文关键词:
Perl脚本经常用于编写并执行被命令行选项(command-line options)控制的相关行为,这方面的例子包括请求帮助和可以改变程序输出的冗长程度。
本文译自Builder.com,未经许可请勿转载

Perl脚本经常用于编写并执行被命令行选项(command-line options)控制的相关行为,这方面的例子包括请求帮助和可以改变程序输出的冗长程度。

Perl具有很多由基本get选项函数变异而来的函数,但这一文章主要集中于Getopt::Std模块中的getopts()函数。

Getopts是一个简单而又灵活的程序,用于处理单一字符命令行选项。以合法的命令行选项调用getopts(),结果可以得到一个可选择的hash引用。

选项字符串包含一个列表的字母,这些字母表示合法的命令行选项。紧跟着一个字母之后的冒号(:)可以表示可用于选项的变量。以下是一个简单的范例:

useGetopt::Std;

getopts('hmf:');

你可以采用两种方式来解析和设定你的选项参数。如果命令行为a-h,变量$opt_h将为1,类似的,如果命令行为a-m,变量$opt_m将为1。如果命令行为a-f,它之后将紧跟着一个字符串变量,如果出现一个变量,$opt_f将设定为字符型。

以下是更加完整的范例:

use Getopt::Std;

getopts('hmf:');

die "Usage: [-h] [-m] [-f string] " if ($opt_h);

print "Option M was present " if ($opt_m);

print "Option F was passed '$opt_f' " if ($opt_f);

print "No options " if (!$opt_f && !$opt_m);

使用getopts可以节省你的时间,并简化你的代码,特别是当你需要处理程序中的命令行选项的时候。



责任编辑:李宁

欢迎评论投稿

百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134