getopts
コマンドは、シェルスクリプト内でコマンドラインオプションを解析するためのツールです。これにより、スクリプトが引数を受け取り、適切に処理することが可能になります。
基本的な構文は以下の通りです。
getopts [options] [arguments]
-a
: オプションを指定する際に使用します。-b
: 引数を受け取るためのオプションです。-c
: オプションの解析を終了します。以下にいくつかの実用的な例を示します。
#!/bin/csh
set args = ( "$argv" )
while ( "$args" != "" )
getopts "ab:c:" option args
switch ( "$option" )
case "a":
echo "オプションAが指定されました"
breaksw
case "b":
echo "オプションBが指定されました: $OPTARG"
breaksw
case "c":
echo "オプションCが指定されました: $OPTARG"
breaksw
case "?":
echo "無効なオプションです"
breaksw
endsw
end
#!/bin/csh
set args = ( "$argv" )
while ( "$args" != "" )
getopts "abc:" option args
switch ( "$option" )
case "a":
echo "オプションA"
breaksw
case "b":
echo "オプションB"
breaksw
case "c":
echo "オプションC: $OPTARG"
breaksw
case "?":
echo "無効なオプション"
breaksw
endsw
end
getopts
を使用する際は、オプションの引数を明確に指定することが重要です。set args = ( "$argv" )
を使って引数を取得することを忘れないでください。getopts
の使用後は、常に switch
文を使ってオプションを処理するようにしましょう。これにより、可読性が向上します。