特定のディレクトリに 1 時間ごとに mysqldump バックアップを作成する bash スクリプトがあります。
バックアップ ファイルのファイル名には、次のスキーマに従って日付と時間が含まれます。
backupfile_<day>-<month>-<year>_<hour>.sql.gz
ここで明確にするために、ファイル名の例をいくつか示します。
backupfile_30-05-2012_0800.sql.gz
backupfile_01-06-2012_0100.sql.gz
backupfile_05-06-2012_1500.sql.gz
ディレクトリ内のすべてのファイルをループしてからファイルを削除するスクリプトの作成を誰かが手伝ってくれますか?
- 1 日より古いバックアップを 1 時間おきに保持する
- 1 週間以上前の 1 日 2 回のバックアップを保持する
- 1 か月以上前の 1 日 1 回のバックアップを保持します。
スクリプトの次の始まりがあります。
#!/bin/bash
cd /backup_dir
for file in *
do
# do the magic to find out if this files time is up (i.e. needs to be deleted)
# delete the file
done