case in $angreifenQ
j) enemieHealth=$(( $enemieHealth - $weaponDamage ));;
n) echo "Du bist ein Franzose"
echo "Warum spielst du eigentlich das Spiel?";;
esac
if $(( $enemieHealth <= 0 )); then
echo "Der Gegner ist gestorben!"
elif $(( $enemieHealth > 0 )); then
echo "Der Gegner hat noch ${enemieHealth} Leben!"
fi
为什么我会收到这些错误?
./anfang.sh: line 125: unexpected EOF while looking for matching `"'
./anfang.sh: line 127: syntax error: unexpected end of file
最佳答案
您提供的代码存在几个问题,首先是 @SLePort 首次提到的 in
关键字的位置错误。您提供的代码没有解释 bash
没有向您报告这些错误消息,您报告的错误消息也没有实际看到。
另一方面,您收到的错误消息是您报告的错误消息,而不是我期望从您的代码中获得的错误消息,这与您所提供的内容之前的某处存在不匹配的 "
字符一致,正如您的第一条消息所描述的那样。事实上,我可以通过在您提供的代码前加上 "
前缀来获取您的消息。
然而,比杂散的 "
本身更有可能的是您省略了尾随 "
的带引号字符串。从您提供的代码中向后看,可以找到这样的东西。如果您有一个支持 shell 脚本语法着色的文本编辑器,那么这可能有助于加快您的搜索速度。
关于linux - 为什么在 bash 脚本中查找匹配的 `"' 错误时会出现语法错误和意外的 EOF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42680639/