Perl スクリプトに次のコードがあります。
私の$ディレクトリ; 私の@ファイル; 私の $help; 私の $man; 私の $verbose; undef $ディレクトリ; undef @files; undef $help; undef $man; undef $verbose; GetOptions( "dir=s" => \$directory, # デフォルト値を持つオプションの変数 (false) "files=s" => \@files, # コンマ区切りを許可するオプションの変数 # ファイル名のリストと複数 # このオプションの出現。 「助けて|?」=> \$help, # デフォルト値を持つオプションの変数 (false) "man" => \$man, # デフォルト値を持つオプションの変数 (false) "verbose" => \$verbose # デフォルト値を持つオプションの変数 (false) ); if (@ファイル) { @files = split(/,/,join(',', @files)); }
相互に排他的なコマンド ライン引数を処理する最良の方法は何ですか? 私のスクリプトでは、ユーザーに「--dir」または「--files」コマンドライン引数のみを入力させ、両方を入力させないようにしています。これを行うためにGetoptを構成する方法はありますか?
ありがとう。