質問

わかりました、だから私はこれをGoogleで検索しようとしましたが、答えを見つけることができないようです。私がやろうとしているのは、Bashでケースステートメントを作成することですが、ユーザーがリストとは異なる数値を入力すると、スクリプトを終了するだけです。エラーを提供してから、ユーザーにオプションのいずれかを選択するように依頼するにはどうすればよいですか?

たとえば、私のケースステートメント

case $ans in
1) echo "Running Project 1..."
   sleep 2
   ./project1.sh
;;
2) echo "Running Project 2..."
   sleep 2
   ./project2.sh
;;
Qq) echo "Exiting"
    exit
;;
esac

したがって、1、2、QQ以外のオプションは、無効な選択というエラーが発生します。もう一度やり直してください。

役に立ちましたか?

解決

時間のループとそのようなブール変数が必要です。

flag = true
while [  $flag ]; do
    case $ans in
        1) echo "Running Project 1..."
           sleep 2
           ./project1.sh
        ;;
        2) echo "Running Project 2..."
           sleep 2
           ./project2.sh
        ;;
        Qq) echo "Exiting"
            flag = false
        ;;
    esac
done
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top