if文の分岐先で、何もしない場合
if [ true ] ; then echo "true" else # 何もしない fi
実行すると
line 9: syntax error near unexpected token `fi'
bashでは、何もしない時に何もコマンドを書かないで済ませることが出来ないです。
if [ true ] ; then echo "true" else : # 何もしない fi
null commandでも置いときましょう
有効なコマンドが記述されていればいいのでNULLコマンドじゃなくてもいいですけどね