これは bash では正常に動作していますが、tcsh で動作させる必要があります。以下は私が使用するコードです:
if [ -e ~/test/file ]; then echo 'yes'; else echo | mail -s 'not done' abc@gmail.com ; fi
この基本的なコードでは、エラーが表示されますif: Expression Syntax
。
エラーの意味がわかりませんし、if ステートメントが機能しない理由もわかりません。括弧の前後にスペースがあります。試しif ( test -f ~/test/file )
てみましたが、同じエラーが発生しました。
デフォルトでbashを使用しているため、迷子になりましたが、このエラーからは洞察が得られません。同様のケースがいくつか見られますが、ファイルの存在を確認することについては何もありません。