嗨,夥計們我試圖在我的bash腳本中執行一項檢查,它需要滿足三個條件,我能夠在if語句中使前兩個條件工作,因爲我想,但是當我想用運算符實現一些算術運算的第三次檢查時,腳本甚至不會啓動。如何在Bash的if語句中使用算術
DOUBLE_CHECK=0
if [[ -z "$avail" && "$WIFI_ID" == "some_str" && 'expr $DOUBLE_CHECK % 2' -eq "0"]]; then
sudo caffeinate xterm -geometry 70x20+0+0 -fa monospace -fs 8 -e './script1.sh' & disown
fi
(($DOUBLE_CHECK++))
的想法是我想要的第三次檢查,有一個數字,增量隨着時間的推移我while循環內,然後檢查,當它被2整除它傳遞的if語句
我不認爲你的#3建議是有效的。 Bash條件支持邏輯運算符,我不知道有什麼理由避免它們(與標準'''測試中的'-a'和'-o'相反]。 – Fred
'[[「A」==「A」]] && [[「B」==「B」]] && echo'foo''適合我 –
是的,它的工作原理。我並不是說你提出的替代語法是錯誤的,我的觀點是,我不認爲推薦將邏輯運算符置於條件之外是個好建議。如果是(可能),這對我來說是新鮮事物。 – Fred