次のcronジョブが定義されています。
55 8 * * 3 /usr/bin/php /home/mark/dev/processes/customClient/events.php > /home/mark/dev/processes/customClient/events-`date +%Y-%m-%d --date='last Wednesday'`-`date +%Y-%m-%d`.csv
0 9 * * 3 /usr/bin/echo 'The csv for last week, trying my hand at automatiging this' | /usr/bin/mutt <emailaddress> -s 'Events from `date +%Y-%m-%d --date='last Wednesday'`-`date +%Y-%m-%d`' -a '/home/mark/dev/processes/customClient/events-`date +%Y-%m-%d --date='last Wednesday'`-`date +%Y-%m-%d`.csv'
上記のコマンドをコマンドラインから直接実行すると、正常に動作するようです。しかし、今朝スクリプトの実行を確認したときに、バックティックが適切に閉じられなかったことを示す電子メール(誤って削除したために言い換えています)を受け取りました。
あなたは間違いなく私の質問をチェックしたいです。Stephane Chazelasによる回答があり、cronジョブが表示する環境と同一の対話型シェルを作成する方法を説明しています。彼の小さな手順を説明すると、プロンプトが表示され、cronjobを段階的にテストして、どこで失敗するかを確認できます。unix.stackexchange.com/a/56503/16841質問と完全に一致するわけではありませんが、crontabの問題のトラブルシューティングに役立ちます。
—
ジッピー
/bin/sh: 1: Syntax error: EOF in backquote substitution
最初のcronジョブ。/bin/sh: 1: Syntax error: Unterminated quoted string
2番目のcronジョブ。