「ファイルをローテーションさせるシェルスクリプト」の版間の差分
提供: Wikiducca
(大松「ブロックされないから荒らしやすいンゴねえ」) |
(いたずら対策) |
||
(同じ利用者による、間の1版が非表示) | |||
行1: | 行1: | ||
− | + | ディレクトリには使えないので注意。 | |
<source lang="bash" line> | <source lang="bash" line> |
2019年1月17日 (木) 13:40時点における版
ディレクトリには使えないので注意。
#!/bin/sh
# 最新の TARGET_FILE が TARGET_FILE.1 となり、
# これまで TARGET_FILE.1 だったものは TARGET_FILE.2 にリネームされる。
# i=n で指定した回数を超えたものは削除される。
i=5
TARGET_FILE="aaaa.txt"
# TARGET_FILE が見つからなければ終了。
if [ -e $TARGET_FILE ]; then
:
else
echo "** ERROR ** File does not exist: $TARGET_FILE"
exit 1
fi
#
while [ $i -gt 1 ]
do
if [ -e $TARGET_FILE.`expr $i - 1` ]; then
mv $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 $TARGET_FILE $TARGET_FILE.1 2>&1 1>/dev/null
fi
# EOF