次のcronjobが動作しなくなった理由を理解するのに少し難しいことがあります。
30 3 * * * /path/to/backup_script.sh && tar -czvf /path/to/archived/backups/retain_last_3_backups/backup-community_$(date '+%Y%m%dT%H%M%S').tar.gz -C /path/to/source/backup/folder/ .
crontabを所有しているのと同じユーザーを使用して手動で実行すると機能します。数日前に編集しましたが動作が停止しました。&& tar -czvf [...]
コマンドを別々に呼び出す必要がありますかdate
?それとも脱出$
(今テストしようとしているのに気づきました)?
David Sánchez Martínのおかげで、次のエラーを報告する特定のログが見つかりました。
/bin/sh: 1: Syntax error: Unterminated quoted string
ベストアンサー1
これらの%
記号は項目内で特別なので、書式文字列では直接使用crontab
できません。date
man 5 crontab
書く
6番目のフィールド(行の残りの部分)は、実行するコマンドを指定します。行の完全なコマンド部分(改行文字または文字まで)は、cronfile変数で指定されたシェルによって実行されます
%
。バックスラッシュ()でエスケープしない限り、コマンドのパーセント記号()は改行文字に変更され、最初の後のすべてのデータは標準入力としてコマンドに送信されます。/bin/sh
SHELL
%
\
%