Shell Script でオプションを利用する方法

コマンドを実行する時に「-h」とか「-s」といった指定をしてオプション指定をすることがあります。これを自作のShell Script で利用する方法はけっこう簡単です。

次のようなスクリプトを作成してみましょう。getoptsの後ろに指定している「n:m:」で「-n」と「-m」というオプションを受け取れるようにしています。また「n)」で始まる行で「-b」と対応する処理を、「m)」で始まる行で「-m」と対応する処理を書いています。「$OPTARG」で指定されたオプションの文字列を参照できます。

#!/bin/sh
while getopts n:m: OPT
do
  case $OPT in
    n) name="$OPTARG";;
    m) message="$OPTARG";;
  esac
done
echo "name:$name, message:$message"

実行すると次のようになります。

$ ./sample_opt.sh
name:, message:
$ ./sample_opt.sh -n hiro345
name:hiro345, message:
$ ./sample_opt.sh -m "hello world"
name:, message:hello world
$ ./sample_opt.sh -n hiro345 -m "hello world"
name:hiro345, message:hello world

bashなどについて理解するには下記の参考書が役に立ちます。

同じタグの記事: Linux
同じタグの記事: shell script
同じカテゴリの記事: Linux