Chinaunix首页 | 论坛 | 博客
  • 博客访问: 821785
  • 博文数量: 188
  • 博客积分: 4433
  • 博客等级: 上校
  • 技术积分: 1905
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-14 07:14
个人简介

linux

文章分类

全部博文(188)

文章存档

2016年(6)

2015年(22)

2014年(18)

2013年(5)

2012年(125)

2011年(10)

2010年(2)

分类: Python/Ruby

2012-05-25 11:01:48

第一种,看上去蛮简洁的
use Getopt::Long;
my $getopt = new Getopt::Long::Parser;
$getopt->configure("bundling", "no_ignore_case");

$getopt->getoptions($options,
        'server|S=s',
        'help|h',
) or exit WRONG_USAGE;

if($options->{'help'}) {
        &help;
}

第二种,忘记哪抄来的了,看上去很累赘
    GetOptions
    ("l|logfile=s"      => \$log_file,
     "h|help"           => \$help);
    !($help) || print_help ();

附送个ruby的getopt
require 'getoptlong'
opts = GetoptLong.new(
        ['--action','-C',GetoptLong::REQUIRED_ARGUMENT],
        ['--hostName','-H',GetoptLong::OPTIONAL_ARGUMENT],
        ['--help','-h',GetoptLong::NO_ARGUMENT]
)
opts.each do |opt,arg|
        case opt
        when '--action'
                action = arg
        when '--hostName'
                hostName = arg
        when '--help'
                help
        end
end
阅读(1101) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~