1
以我殼腳本來收集CPU利用率:相對比較表達式
cpu=$(mpstat | awk '$12 ~ /[0-9.]+/ { print 100 - $12}');
echo "CPU Usage (%): $cpu"
輸出:CPU Usage (%): 0.44%
該代碼段如下在我的腳本上述兩個語句:
if [ ($cpu >= 50|bc) -ne 0 ]; then
/usr/sbin/sendmail "$recipients" <<EOF
subject: $subject
from: $from
`date`: CPU Utilisation above 50% on $IP
EOF
echo "Mail alert triggered."
fi
這個問題似乎在語句中與語法相關,其中> =比較正在完成。
錯誤:
./trialByCombat.sh: line 148: syntax error near unexpected token `$cpu'
./trialByCombat.sh: line 148: `if [ ($cpu >= 50|bc) -ne 0 ]; then'
我對此毫無頭緒。空格,縮進,shell腳本打敗我。
展望在這一點上,我一定是。 「$ cpu> = 50'本身沒有意義,因爲它不在測試構造內。 –