2013-10-19 149 views
1

我想寫這樣一個表達式比較兩個表達式--->如果在bash [ $condition1 ] && [ $condition2 ],但我不斷收到同樣的錯誤所有的時間我不能猛砸

syntax error near unexpected token `elif' 
./leer.sh: line 25: `elif [[ "$($(date +%Y) -eq $ano)" && "$($(date +%m) -lt $mes)" ]]' 

的那部分代碼:

elif [[ $($(date +%Y) -eq $year) && $($(date +%m) -lt $month) ]] 
then 
echo "Well done"; 
+0

請張貼您的整個if塊 – Guru

+0

嗯,這是相同的錯誤語法,但發佈的代碼段和錯誤消息不匹配! ('$ ano' /'$ year','$ mes' /'$ month') –

回答

1

有一對夫婦的事情錯在這裏:

  • 你的病情不啓動但elif
  • 你缺少最後fi
  • 您嘗試使用第二$(...)

你嘗試這樣做是爲了執行邏輯表達式?

#!/bin/bash 

year=2013 
month=11 

if [[ $(date +%Y) -eq $year && $(date +%m) -lt $month ]]; then 
    echo "Well done" 
fi 
+0

非常感謝!它終於奏效了。 – user2897414