사용자가 목록 내에서 값을 선택할 때까지 루프를 작성하려고합니다 (0
에서 9
까지의 한 자리 숫자). 리스트 내에서 루프까지 선택
choice=999
echo $choice
until [[ $choice in 0 1 2 3 4 5 6 7 8 9 ]]
do
read -p "How many would you like to add? " choice
done
는 상관없이 내가 뭘, 난 그냥 작동시킬 수 없습니다 :이 내가
sh
명령을 사용하여 우분투 16.04 쉘에서 실행하려고 내의 .sh 스크립트입니다.
sh test2.sh
999
test2.sh: 3: test2.sh: [[: not found
How many would you like to add? f
test2.sh: 3: test2.sh: [[: not found
How many would you like to add? 2
test2.sh: 3: test2.sh: [[: not found
How many would you like to add? 3
test2.sh: 3: test2.sh: [[: not found
How many would you like to add? r
test2.sh: 3: test2.sh: [[: not found
내가 해봤 너무 많은 것들을 :
until
을 방지하고 단지 단일 대괄호[ condition ]
를 사용while
- 를 사용하여 다음 테스트는 손에 당신에게 오류의 아이디어를 제공하기 위해, 또는 대괄호가 전혀 없습니다.
=~
을 정규 표현식과 일치 시키려면^[0-9]
아무것도 작동하지 않습니다. 항상 같은 오류. 무슨 일이야? :(
고마움, 나는 두 번째 방법을 시도하고 매력처럼 작동했습니다. – Alexander
오신 것을 환영합니다. 귀하의 질문을 편집하여 원래 의도했던 것을 더 분명하게 보여 드리겠습니다. 동의하지 않으시면 다시 편집하십시오. –