| 日本−日本語 |
|
|
|
![]() |
HP-UX リファレンス: セクション 1 : ユーザーコマンド (A~M) > ggetopts(1)HP-UX 11i Version 2: September 2004 |
|
名称getopts ― ユーティリティ (コマンド) オプションの構文解析 説明getopts は、パラメータのリストからオプションおよびオプションの引き数を読み出すのに使用されます。 getopts は、起動されるたびに 次のオプションの値を name オペランドにより指定されるシェル変数に、また処理される次の引き数のインデックスをシェル変数 OPTIND に代入します。 シェルが起動されると、必ず OPTIND は 1 に初期化されます。 オプションにオプションの引き数が必要な場合は、 getopts はそれをシェル変数 OPTARG に代入します。 オプションが見つからない場合または検索されたオプションに引き数がない場合、 OPTARG は設定されません。 optstring オペランドに含まれないオプション文字がオプション文字のあるべき場所で検索された場合、 name により指定されるシェル変数は疑問符 (?) 文字に設定されます。 この場合 optstring の最初の文字がコロン (:) ならば、シェル変数 OPTARG は検索されたオプション文字に設定されますが、出力を標準エラーには書き出しません。 それ以外の場合、シェル変数 OPTARG は設定されず、診断メッセージは標準エラーに書き出されます。 この状態は、引き数がアプリケーションを起動するように示される場合に検出されたエラーであると解釈されますが、 getopts 処理においてはエラーではありません。 オプションの引き数がない場合は以下のとおりです。
オプションの終端が出現すると、 getopts はゼロより大きな戻り値で終了します。 シェル変数 OPTIND は、最初の非オプションの引き数のインデックスか値 $# + 1 に設定されます。前者の場合、最初の -- 引き数は、その前に非オプションの引き数がなければ、 オプションの引き数になります。値 $# + 1 になるのは、非オプションの引き数がない場合です。 name 変数は、疑問符文字に設定されます。 オプションの終端を識別するのは、 特殊オプション -- 、 - から始まらない引き数、エラーの出現です。 シェル変数 OPTIND および OPTARG は、 getopts の呼び出し元に対してローカルであり、デフォルトではエクスポートされません。 name オペランドにより指定されるシェル変数 OPTIND および OPTARG は、現在のシェル実行環境に影響を与えます。 オペランド以下のオペランドがサポートされています。
getopts は、デフォルトでは起動するシェルプロシージャに渡される位置パラメータを構文解析します。 args を与える場合、位置パラメータに代わり構文解析します。 エラーエラーが検出され、 optstring オペランドの最初の文字がコロン (:) でないときはいつでも、診断メッセージが不特定のフォーマットで次のような情報とともに標準エラーに書き込まれます。
例getopts は現在のシェル実行環境に影響を与えるため、一般にそれは組込みのシェルレギュラーとして提供されます。 サブシェルまたは次のいずれかのように別のユーティリティ実行環境で呼び出された場合、 (getopts abc value "$@") それは呼び出し元環境のシェル変数に影響を与えません。 位置パラメータが変更されるとしても、シェル関数は OPTIND を呼び出しシェルと共有する点に注意してください。 引き数の構文解析に getopts を使用する関数では、開始時に OPTIND の値をセーブし、戻る前にリストアしなければなりません。 ただし、関数は呼び出しシェルの OPTIND を変更しなければならない場合もあります。 以下の例スクリプトでは、その引き数を構文解析して表示します。 aflag= |
|||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||