トップページ » 3.1.Linux/UNIX » シェルスクリプトでファイルのローテーション
3.1.Linux/UNIX
シェルスクリプトでファイルのローテーション
シェルスクリプトでファイルをローテーションしたいときのメモ。 いつもの如くbashでの話。
ログやらバックアップファイルやら、時折特定のファイルをローテーションしたくなる事に出くわす。 logrotateでもできるが、ローテーションの処理もスクリプトに含ませたい事もあるわけで。
# ログのローテーション
TARGET_FILE="/var/hoge/hoge.log"
i=7
while [ $i -gt 1 ]
do
if [ -e $TARGET_FILE.`expr $i - 1` ]; then
mv -f $TARGET_FILE.`expr $i - 1` $TARGET_FILE.$i 2>&1 1>/dev/null
fi
i=`expr $i - 1`
done
if [ -e $TARGET_FILE ]; then
mv -f $TARGET_FILE $TARGET_FILE.1 2>&1 1>/dev/null
fi
先頭のTARGET_FILEにローテートさせたいファイルを、iにレベルを入れる。
投稿日 : March 7, 2005
この記事に関する言及
このエントリーのトラックバックURL:
http://akionweb.com/mt-tb.cgi/238
コメント
このページに対する感想、意見をお寄せ下さい。
おことわり
当サイトに掲載している全ての情報は、全て当サイト管理者が個人的、実験的に試した事、又は独自に調査したものです。 従ってその情報に誤りがある可能性も多分にあります。 当サイトの情報をそのまま鵜呑みにされませんようお願い申し上げます。 また当サイトの情報を元に作業されたりする場合はそれをご理解頂いた上で、あくまで自己責任の元で行ってください。
トップページ » 3.1.Linux/UNIX » シェルスクリプトでファイルのローテーション



