web-dev-qa-db-ja.com

Ubuntu 18.04 cronジョブが実行されていない

別のプロセスから2019-02-21形式で作成されたフォルダーからファイルを削除したい。

# Clear every 6 hours, 5 minutes
*/5 */6 * * * find /data/Ding/dong/$(date '+%Y-%m-%d') -type f -exec rm -f {} \;

更新

実際、$(dateはcronjobで動作していませんでした。解決策については回答をご覧ください。

1
AZ_

ヒントを提供してくれたWinEunuuchs2Unixに感謝します。

chmod +x実行可能アクセスを使用して、ホームディレクトリにスクリプトを作成しますchmod 0755/etc/crontabに移動し、次の行を入力します

*/5 */6 * * * root /home/john/{your script name}.sh >> /var/log/cronErrLog.txt 2>&1

そして、それは6時間5分ごとに実行されます

これを{your script name}.shに入れることができます

find /data/Ding/dong/$(date '+%Y-%m-%d') -type f -exec rm -f {} \; 
1
AZ_

Cronが実行されているかどうかを確認します。それが無効になっているか、インストールされていない可能性があります。

leonid@Desktop:~$ /etc/init.d/cron status
● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
   Active: active (running)

また、コマンドのエラー出力をログファイルにリダイレクトして、何が問題かを確認します。

1
LeonidMew