私はすでにcronをインストールしていますが、ここにあります
1 0 * * * rm -R/path/to/my/folder/$(date + '%Y-%m-%d' -d "昨日")
「昨日名」のような「2014-12-14」のような毎日のフォルダーを削除したい
「grep CRON」コマンドを実行したときのubuntu/var/log/syslogは次のとおりです。
12月16日00:01:01 {サーバー名} CRON [21031]:(ルート)CMD(rm -R/path/to/my/folder/$(date + ')12月16日00:01:01 {サーバー名} CRON [ 21030]:(CRON)情報(MTAがインストールされていない、出力を破棄)
マンページ(man 5 crontab
)のコメント:
行のコマンド部分全体(改行または%文字まで)は、/ bin/shまたはcrontabファイルのShell変数で指定されたシェルによって実行されます。コマンド内のパーセント記号(%)は、バックスラッシュ()でエスケープされない限り、改行文字に変更され、最初の%以降のすべてのデータは標準入力としてコマンドに送信されます。
したがって、日付形式のすべての%
を\%
に置き換える必要があります。
1 0 * * * rm -R /path/to/my/folder/$(date +'\%Y-\%m-\%d' -d "yesterday")
このコマンドを使用できます
find /path/to/dir -maxdepth 0 -ctime +1 -exec rm -fr {} +
すなわち
1 0 * * * find /path/to/dir -maxdepth 0 -ctime +1 -exec rm -fr {} +