オプションの取得


 Getopt::Stdのgetoptsを使うと簡単です。
 第一引数に受け取るオプションの種類を書きます。オプションのあり/なしだけを取る場合はオプション名だけを、オプションの値も取る場合はオプション名と後ろにコロン(:)を指定して下さい。
 第二引数にハッシュのリファレンスを指定すると、オプションの値が設定されます。第二引数を省略した場合は、変数$opt_{オプション名}にオプションの値が設定されます。
 オプションはハイフン(-)形式が有効でスラッシュ(/)形式は使えません($Getopt::Std::VERSION=1.05で確認)。
use Getopt::Std;

my %opt;

getopts("f:v", \%opt);

if (exists $opt{v}) {
    print "option v が指定されました。\n";
}

if (exists $opt{f}) {
    print "option f が指定されました。";
    if (defined $opt{f}) {
        printf "値は %s です。", $opt{f};
    }
    print "\n";
}
 上記のスクリプトをopt.plで保存したとした場合、以下のように利用します。
# perl opt.pl -v
# perl opt.pl -v -f test.txt
# perl opt.pl -vf sample.doc

関連項目

名前付きオプションを使う