LoginSignup
1
0

More than 3 years have passed since last update.

シェルスクリプトを対話式にする

Last updated at Posted at 2020-04-30

シェルスクリプトを対話式にする

シェルスクリプトも対話式にして複数の機能を呼び分けるように使いやすくしたいなーと、
思って調べたらselect構文が適していたので記録しておく。
結構シンプルに実装できるなーという印象。

# 機能の選択
select cmd in CREATE DROP START STOP QUIT
do
    case $cmd in
        CREATE)
            echo "作成します"
            echo ""

            #ここにCREATE処理を書く
            ;;
        DROP)
            echo "削除します"
            echo ""

            #ここにDROP処理を書く
            ;;
        START)
            echo "起動します"
            echo ""

            #ここにSTART処理を書く
            ;;
        STOP)
            echo "停止します"
            echo ""

            #ここにSTOP処理を書く
            ;;
        QUIT)
            echo "スクリプトの処理を終了します"
            break
            ;;
        *)
            echo "$REPLY という選択肢はありません"
    esac
done

実行すると以下のように入力待ちになるので、対応する数字を入力してENTERを押して選択。

1) CREATE
2) DROP
3) START
4) STOP
5) QUIT
#? 
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0