超神之狱血魔神百度云:perl中的Getopt函数的使用

来源:百度文库 编辑:九乡新闻网 时间:2024/04/30 15:31:14

perl中的Getopt函数的使用

时间:2009-04-06 13:17来源:扶凯 作者:扶凯 点击:814次

我们在linux常常用到一个程序需要加入参数,现在了解一下perl中的有关控制参数的函数.getopt.在linux有的参数有二种形式.一种是--help,另一种是-h.也就是-和--的分别.--表示完整参数.-表示简化参数.

在perl中也分这二种.

Getopt::Std模块的功能:
初始化perl命令行中所接受的参数,简化了命令行参数的解析。

简化参数例子:

#!/usr/bin/perl -w
use strict;
use Getopt::Std;

use vars qw($opt_a $opt_b $opt_c);
getopts('d:f:p:');

print "\$opt_a =>; $opt_a\n" if $opt_a;
print "\$opt_b =>; $opt_b\n" if $opt_b;
print "\$opt_c =>; $opt_c\n" if $opt_c;

输出如下:
[root@mail test]# ./getopt.pl -a aa -b bb -c cc
$opt_a =>; aa
$opt_b =>; bb
$opt_c =>; cc

 

完整参数

 

 

#!/usr/bin/perl


use Getopt::Long;
Getopt::Long::GetOptions(
                'page=i'    => \$page,
                'onoff!'    => \$onoff,
                'help'      => \$wants_help,
                'name=s'    => \$name,
                'number:i' => \$number);
if(defined($page)){
        print "page flag set to $page ";
}
if(defined($onoff)){
        print "onoff flag set to $onoff ";
}
if(defined($wants_help)){
        print "help flag set to $wants_help ";
}
if(defined($name)){
        print "name flag set to $name ";
}
if(defined($number)){
        print "number flag set to $number ";
}

./getlong.pl -name AAA
name flag set to AAA