我寫了一個bash腳本,僅在工作時間執行卷曲調用。出於某種原因,每小時比較失敗時,我添加一個「-a」運算符(由於某種原因,我的bash不能識別「& &」)。多個-a大於/小於打破bash腳本
雖然腳本大得多,這裏是有關部分:
HOUR=`date +%k`
if [ $HOUR > 7 -a $HOUR < 17 ];
then
//do sync
fi
的劇本給我的錯誤:
./tracksync: (last line): Cannot open (line number): No such file
然而,這種比較沒有失敗:
if [ $DAY != "SUNDAY" -a $HOUR > 7 ];
then
//do sync
fi
我的語法錯了,或者這是我的bash問題嗎?
很酷,不知道。感謝您的提示=) – 2012-01-09 16:11:49
不客氣;) – 2012-01-09 16:24:45
其實,您可以在'[]'中使用'<' and '>',但您需要轉義或引用它們以防止它們被解釋爲重定向,並且它們按字母順序排列比較而不是數字比較。例如,'[7 \> 17]'是真實的,因爲「7」在(「大於」)「17」之後按字母順序排列。 – 2012-01-09 16:27:38