シェル getoptsでオプションの取得

シェルスクリプトへのオプションやオプションの値を取得します。

例)./hoge.sh -a -b value param

上記スクリプト実行時の -a -b value param の部分をhoge.sh内で捉えます。

-a は値なしのオプション。

-b は値有りのオプション。
値としてvalueを持ちます。

paramはシェルスクリプトへのパラメータ(引数)。

以下は hoge.sh の内容。(このソースを丸覚えしておくと良いかもしれません。)

getopts ab: の部分がこのスクリプトが受け入れるオプションの指定。

ab: の意味は、-a -b value を受け入れるということです。

abがそのまま -a -b に対応しています。

値ありオプションの場合は「:」(コロン)を指定します。

getopts a:b: とした場合は -a a_value -b b_value を受け入れるということです。

このスクリプトを実行すると以下のようになります。

スクリプト最後の方の

は位置パラメータを正しく取得するためのお決まりの記述と思ってください。

後はなれるためにサンプルプログラムをいろいろ変えて動作を確かめてください。

動かしているうちにイメージがつかめると思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です