Hack 31. PS3 - シェルスクリプト内の“select”に使用されるプロンプト
シェルスクリプト内で select ループ用の独自プロンプトを定義することができます。
以下で示すように PS3 環境変数を使用します。
ramesh@dev-db ~> cat ps3.sh select i in mon tue wed exit do case $i in mon) echo "Monday";; tue) echo "Tuesday";; wed) echo "Wednesday";; exit) exit;; esac done ramesh@dev-db ~> ./ps3.sh 1) mon 2) tue 3) wed 4) exit #? 1 Monday #? 4 [Note: これは select コマンドプロンプトにデフォルトの "#?" を表示します。]
ramesh@dev-db ~> cat ps3.sh PS3="Select a day (1-4): " select i in mon tue wed exit do case $i in mon) echo "Monday";; tue) echo "Tuesday";; wed) echo "Wednesday";; exit) exit;; esac done ramesh@dev-db ~> ./ps3.sh 1) mon 2) tue 3) wed 4) exit Select a day (1-4): 1 Monday Select a day (1-4): 4 [Note: これは select コマンドプロンプトとして変更した "Select a day (1-4):" を表示します。]