getopt コマンド

目的

コマンド・ラインのフラグとパラメーターを解析します。

構文

getopt Format Tokens

説明

getopt コマンドは、期待されたフラグと引数を使用してトークンのリストを解析します。 フラグは単一の ASCII 文字で、後ろに : (コロン) が付いている場合は、 引数が付いているものと見なされます。各引数は、 1 つ以上のタブかスペースで区切ることができますが、必ずしもその必要はありません。引数に使うことはできますが、フラグ文字には使えません。

getopt コマンドは、すべてのトークンを読み取るとき、 または特殊トークン — (二重ハイフン) を検出すると、処理を完了します。次に、getopt コマンドは処理したフラグ、 — (二重ハイフン)、 および残りのトークンを出力します。

トークンがフラグと一致しなければ、getopt コマンドはメッセージを標準エラーに書き出します。

getopt コマンドをスケルトン・シェル・スクリプトで使用すると、次の例のようにオプションを解析することができます。

#!/usr/bin/bsh
# parse command line into arguments
set -- `getopt a:bc $*`
# check result of parsing
if [ $? != 0 ]
then
        exit 1
fi
while [ $1 != -- ]
do
        case $1 in
        -a)     # set up the -a flag
                AFLG=1
                AARG=$2
                shift;;
        -b)     # set up the -b flag
                BFLG=1;;
        -c)     # set up the -c flag
                CFLG=1;;
        esac
        shift   # next flag
done
shift   # skip --
# now do the work
.
.
.
 
注: C シェルで、getopt コマンドを実行する場合は、次のコマンドを使用してください。
set argv=`getopt OptionString $*`

次の各例で、getopt コマンドはフラグと引数を同じように処理します。

  • -a ARG -b -c
  • -a ARG -bc
  • -aARG -b -c
  • -b -c -a ARG

ファイル

項目 説明
/usr/bin/getopt getopt コマンドが入っています。