스크립트 설정을 계속 실행하는 방법은 무엇입니까?

스크립트 설정을 계속 실행하는 방법은 무엇입니까?

저는 pickanumber.sh라는 스크립트를 작성 중입니다. 사용자에게 숫자를 선택하도록 요청하는 스크립트를 설정 중입니다. "8" 이외의 숫자를 입력하면 스크립트가 계속 실행됩니다. 사용자가 "8" 이외의 숫자를 선택하면 스크립트가 계속 실행되도록 할 수 없습니다. for 루프를 사용해야 할까요, 아니면 while 루프를 사용해야 할까요? 이것은 지금까지 내 스크립트입니다.

rand_num=0
let "rand_num = $RANDOM % 10 + 1"
echo $rand_num
echo -n "pick a number from 1 - 10! "
read pickanumber
if [ "$pickanumber" = "8" ]; then
   echo "GOOD JOB"
else
   read $pickanumber
fi          

답변1

while루프를 사용 하거나 until.

until [ "$pickanumber" = "8" ]; do
    echo -n "pick a number from 1 - 10! "
    read pickanumber
done
echo "GOOD JOB"

답변2

#!/bin/bash
let "rand_num = $RANDOM % 10 +1"
pickanumber=0
printf "Pick a number on this range [1-10]:"
read pickanumber

while [ true ]; do
 if [ $pickanumber -eq $rand_num ];then
  echo "Good Job!"
  exit
 else
  printf "Wrong, try again?"
  read pickanumber
 fi
done

관련 정보