速攻!WEBプログラム養成講座

アキオ技術記録とそれを活かしてみなさまのスキルアップを目指します

削除バッチ、日次バッチ 作成手順

 指定したディレクトリ内で7日より古いもの削除

find /var/log -mtime +7 -type f -exec rm -f {} \;

指定したディレクトリでファイル名に"TS004"を含むで7日より古いファイルを削除
find /var/log/tmp -name "TS004*" -mtime +7 -type f -exec rm -f {} \;


#!/bin/sh
find /var/log/tmp -name "TS004*" -mtime +7 -type f -exec rm -f {} \;


viで編集

delete_daily.shとして保存

試しに実行してみます。


chmod u+x delete_daily.sh
delete_daily.sh

次にcronに設置します。

crontabについて

crontab [ -u ユーザ名 ] { -l | -r | -e }

-u どのユーザがcrontabを設定するのかを指定します。
省略した場合はcrontabコマンドを実行したユーザで設定されます。

削除バッチなので結構ユーザーは重要です。
指定したユーザーの権限で削除できるファイルが決まるからです。
rootにしておけば、どのユーザーのファイルでも削除できますね。
ここれではrootにしましょう。

# crontab -u root -l
05 4 * * * delete_daily.sh

ちなみに上記は毎朝4時5分に削除バッチを実行するように設定しています。