私のDebian 9.4コンピュータには、srv /の日付名がxx-xx-xxxx.tarのすべてのファイルを自動的に圧縮してバックアップするスクリプトがあります。私のbackups /ディレクトリに移動されました。
フォルダ内の.tarファイル(バックアップ)の数を10個に制限し、新しいtarが作成されるたびに最も古い.tarファイルを削除したいと思います。
この問題を解決するための最良の方法は何ですか?これは私のスクリプトです。
#!/bin/bash
#Purpose = Backup of Important Data
#Created on 17-1-2012
#Author = Hafiz Haider
#Version 1.0
#START
TIME=`date +%b-%d-%y` # This Command will add date in Backup File Na$
FILENAME=backup-$TIME.tar.gz # Here i define Backup file name format.
SRCDIR=/srv/daemon-data # Location of Important Data Directo$
DESDIR=/backups # Destination of backup file.
tar -cpzf $DESDIR/$FILENAME $SRCDIR
#END
ベストアンサー1
スクリプトの最後に以下を追加します。
find "$DESDIR/$FILENAME" -type f -mtime +10 -delete
これにより、ディレクトリ内のバックアップファイル(tar.gz)が見つかり、10日以上前のすべてのバックアップが削除されます。