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):" を表示します。]