所以我做了一小段代碼,應該用另一個字符串中的字符替換下劃線(_)。如果你想知道目的,我打算製作Hang子手遊戲。Char by char循環取代BASH
x=0
while [ $x -lt $LengthOfAnswer ]; do
if [ $Answer:$x:1 == $GuessedChar ]; then
Underscores=$(echo $Underscores | sed s/_/${Answer:$x:1}/$((x+1)))
fi
done
由此產生的結果是,第一次進行猜測,因此該循環結束,所有事情都按預期工作。然後,然後,結果開始採取奇怪的模式。
實施例:
回答是 「ABCDEF」
開始: 「_ _ _ _ _ _」
猜測 「一個」: 「一個_ _ _ _ _」
猜測 「b」: 「一個_ b _ _ _」
猜測 「C」: 「一個_ b _ç_」
當然,在這一點上應該是「A B C _ _ _」
如果任何人有需要做得到這個工作有什麼建議,我會很高興聽到這個消息。如果沒有別的選擇,只能改變我的結構,那麼請告訴我。
你可以找到在bash [這裏](https://github.com/higuaro/bash-games/blob/master/hang.sh)製作的hang子手遊戲的實現。 – higuaro
嗯,有一個評估正在進行在我的大學裏,我們都需要讓Hangman成爲對bash技能的測試。結構明智這是一件輕而易舉的事,但這裏的語言本身是最大的阻礙。 – SpiritBH