[英]Bash script not behaving like I'd expect
我在這里和Google上搜索了一個又一個的問題,但是我的語法有些混亂。 任何幫助表示贊賞。
基本上,我有另一個函數來設置負載和閾值以及$ FORCE變量。 如果腳本滿足第一個或第二個條件,則需要執行“填充”。 變量已正確設置,調試時已通過腳本中的echo
確認了這些變量。
if ([ $LOAD -ge "$THRESH" ] || [ $FORCE=1 ]);
then
# do some other stuff
fi
從我看到的情況來看,括號在條件周圍的間距是正確的。 它們不再像以前那樣產生bash [: missing
]'`錯誤。
該腳本運行正常,除了一個問題...無論如何都可以運行。 就像我完全忽略了[ $FORCE=1 ]
部分一樣,盡管我可以看到$FORCE
實際上是0。
我應該使用單引號還是其他方法?
嘗試在=
周圍放置空格:
if ([ $LOAD -ge "$THRESH" ] || [ $FORCE = 1 ]);
then
# do some other stuff
fi
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.