第二次發帖,還是個新人。我的任務是編寫一個簡短的程序,為使用者提供一杯茶。這個想法是為了證明有效使用while 迴圈和 if 語句。
用戶被問到「你想喝杯茶嗎?」。如果使用者回答“是”,則腳本結束。
如果用戶說“否”[N],腳本會繼續詢問“您確定嗎?”再四次。如果在這 4 次重複中的任何一點使用者說「是」[Y],則腳本將結束。
這是到目前為止我的腳本。我執行了它並讓它工作,直到說“是”為止,但是可循環的“否”給我帶來了麻煩;我現在似乎根本無法執行它 - 我收到以下訊息
`syntax error: near unexpected token 'else'`
這是我的完整腳本。再說一次,我對此很陌生,因此熱烈歡迎任何和所有回饋。
#!/bin/bash
while [[ $refusals != 4 ]]
do
echo "Will you have a cup of tea? [Y/N]"
read response
$refusals = 0
if [[ $response = Y ]] || [[ $response = y ]]
then
$refusals = 4
echo "Great, I'll make tea now!"
exit
elif [[ $response = N ]] || [[ $response = n ]]
$refusals = [[ $refusals+1 ]]
echo "Are you sure?"
read response
else
echo "Fine, be that way."
exit
fi
done