Getopt-Std-1.14 > Getopt::Std

名前

Getopt::Std - Process single-character switches with switch clustering

Getopt::Std - スイッチクラスタリング付きの単一文字スイッチ処理

(訳注: (TBR)がついている段落は「みんなの自動翻訳@TexTra」による 機械翻訳です。)

概要

    use Getopt::Std;

    getopts('oif:');  # -o & -i are boolean flags, -f takes an argument
                      # Sets $opt_* global variables as a side effect
    getopts('oif:', \my %opts);  # Options as above, values in %opts
    getopt('oDI');    # -o, -D & -I take arguments
                      # Sets $opt_* global variables as a side effect
    getopt('oDI', \my %opts);    # -o, -D & -I take arg, values in %opts

説明

The getopts() function processes single-character switches with switch clustering. Pass one argument which is a string containing all switches to be recognized. For each switch found, if an argument is expected and provided, getopts() sets $opt_x (where x is the switch name) to the value of the argument. If an argument is expected but none is provided, $opt_x is set to an undefined value. If a switch does not take an argument, $opt_x is set to 1.

getopts()関数は、スイッチクラスタリングを使用して単一文字のスイッチを処理します。 認識されるすべてのスイッチを含む文字列である引数を1つ渡します。 検出されたスイッチごとに、引数が必要で指定されている場合、getopts()$opt_x(xはスイッチ名)を引数の値に設定します。 引数が必要で指定されていない場合、$opt_xは未定義の値に設定されます。 スイッチが引数を取らない場合、$opt_x1に設定されます。 (TBR)

Switches which take an argument don't care whether there is a space between the switch and the argument. If unspecified switches are found on the command-line, the user will be warned that an unknown option was given.

引数を取るスイッチは、スイッチと引数の間にスペースがあるかどうかを気にしません。 指定されていないスイッチがコマンドラインで見つかった場合、ユーザは不明なオプションが指定されたことを警告されます。 (TBR)

The getopts() function returns true unless an invalid option was found.

Cの<getopts()>関数は、不正なオプションが見つからなければ真を返します。 (TBR)

The getopt() function is similar, but its argument is a string containing all switches that take an argument. If no argument is provided for a switch, say, y, the corresponding $opt_y will be set to an undefined value. Unspecified switches are silently accepted. Use of getopt() is not recommended.

getopt()関数も似ていますが、引数は引数を取るすべてのスイッチを含む文字列です。 スイッチに引数が指定されていない場合(yなど)、対応する$opt_yは未定義の値に設定されます。 指定されていないスイッチは暗黙的に受け入れられます。 getopt()の使用は非推奨です。 (TBR)

Note that, if your code is running under the recommended use strict vars pragma, you will need to declare these package variables with our:

コードを推奨されているuse strict varsプラグマで実行している場合は、これらのパッケージ変数をourで宣言する必要があることに注意してください。 (TBR)

    our($opt_x, $opt_y);

For those of you who don't like additional global variables being created, getopt() and getopts() will also accept a hash reference as an optional second argument. Hash keys will be x (where x is the switch name) with key values the value of the argument or 1 if no argument is specified.

追加のグローバル変数が作成されることを好まない人のために、getopt()getopts()もオプションの2番目の引数としてハッシュ参照を受け付けます。 ハッシュキーはx(xはスイッチ名)で、キー値は引数の値、引数が指定されていない場合は1です。 (TBR)

To allow programs to process arguments that look like switches, but aren't, both functions will stop processing switches when they see the argument --. The -- will be removed from @ARGV.

プログラムがスイッチのように見えるが実際にはそうでない引数を処理できるように、両方の関数は引数--を見つけた時にスイッチの処理を停止します。 --@ARGVから削除されます。 (TBR)

--help and --version

If - is not a recognized switch letter, getopts() supports arguments --help and --version. If main::HELP_MESSAGE() and/or main::VERSION_MESSAGE() are defined, they are called; the arguments are the output file handle, the name of option-processing package, its version, and the switches string. If the subroutines are not defined, an attempt is made to generate intelligent messages; for best results, define $main::VERSION.

-が認識可能なスイッチ文字でない場合、getopts()は引数--help--versionをサポートします。 main::HELP_MESSAGE()および/またはmain::VERSION_MESSAGE()が定義されている場合、それらが呼び出されます。 引数は、出力ファイルハンドル、オプション処理パッケージの名前、そのバージョン、およびスイッチ文字列です。 サブルーチンが定義されていない場合、インテリジェントメッセージの生成が試行されます。 最良の結果を得るには、$main::VERSIONを定義してください。 (TBR)

If embedded documentation (in pod format, see perlpod) is detected in the script, --help will also show how to access the documentation.

組み込み文書(pod形式、perlpodを参照)がスクリプト内で検出された場合は、--helpでも文書へのアクセス方法が表示されます。 (TBR)

Note that due to excessive paranoia, if $Getopt::Std::STANDARD_HELP_VERSION isn't true (the default is false), then the messages are printed on STDERR, and the processing continues after the messages are printed. This being the opposite of the standard-conforming behaviour, it is strongly recommended to set $Getopt::Std::STANDARD_HELP_VERSION to true.

過度のパラノイアのため、$Getopt::Std::STANDARD_HELP_VERSIONがtrueでない場合(デフォルトはfalse)、メッセージはSTDERRに出力され、メッセージが出力された後も処理が続行されます。 これは標準に準拠した動作とは逆であるため、$Getopt::Std::STANDARD_HELP_VERSIONをtrueに設定することを強くお勧めします。 (TBR)

One can change the output file handle of the messages by setting $Getopt::Std::OUTPUT_HELP_VERSION. One can print the messages of --help (without the Usage: line) and --version by calling functions help_mess() and version_mess() with the switches string as an argument.

$Getopt::Std::OUTPUT_HELP_VERSIONを設定することで、メッセージの出力ファイルハンドルを変更できます。 引数としてスイッチ文字列を使用して関数help_mess()およびversion_mess()を呼び出すことで、--help(Usage:行なし)および--versionのメッセージを出力できます。 (TBR)