Запустите скрипт оболочки на машине с Windows, но цикл while do завершается? - PullRequest
0 голосов
/ 19 сентября 2019

Я новичок в скрипте bash.Я хочу, чтобы пользователь ввел свой выбор, но цикл while-do не прерывается.Я устал все варианты читать [вариант], но некоторые из них не работает.чтение -a остановить цикл, но не принимает ввод.Я использую Windows-машину, и я не уверен, нужно ли мне устанавливать какие-либо другие библиотеки или пакеты.

Я пытался: read -p, read -a, read -r , read

function user_input {
while true; do
    echo "1. choice 1"
    echo "2. choice 2"
  read -p "What choice would you like: [1,2] " ANS
  case $ANS in 
    '1') 
       environment="-A"
       break;;
    '2') 
       environment="-B" 
       break;;   
    *) 
       echo "Wrong input, try again";;
  esac
done
}

1 Ответ

1 голос
/ 19 сентября 2019

Поскольку у вас есть case, вложенное в while, вы должны использовать break 2, чтобы разбить оба.В противном случае определите переменную CON=true и установите значение false в case.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...