我对bash比较陌生,并且正在尝试这样做:
COMPARE2=$(tail -n 1 $LOGFILE)
echo "$COMPARE2"
if [ "$COMPARE" != "$COMPARE2" ]
then
echo "Server not responding, killing process..."
# kill $(ps aux | grep 'craftbukkit.jar' | awk '{print $2}')
fi
本质上,如果COMPARE与COMPARE2不匹配,我希望它执行命令。如果相等,则什么也不做。
当前,COMPARE和COMPARE2不匹配,但是无论如何它都会执行回显“服务器无响应”。
我究竟做错了什么?谢谢!
最佳答案
!=表示“不相等”,因此您的代码在说的是:
如果比较不等于Compare2,则回显“服务器无响应,正在终止进程...”
您需要将!=更改为=以检查是否相等。 !=检查不平等。
关于linux - 我如何正确格式化此bash if语句?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21639890/