Linuxサーバーのバックアップにスクリプトを使用しています。次のコードを使用してシステム名を指定します。
# Create archive filename.
day=$(date +%A)
hostname=$(hostname -s)
archive_file="$hostname-$day.tgz"
前のバックアップをすべて削除し、最後の2つはそのままにしたいと思います。どうすればいいですか?
答え1
バックアップスクリプトに前日に作成されたアーカイブを削除させることができます。
# Create archive filename.
day=$(date +%A)
hostname=$(hostname -s)
archive_file="$hostname-$day.tgz"
# Do backup
#...
# Delete old backup (assuming GNU date)
deleteday=$( date -d '2 days ago' +'%A' )
rm -f "$hostname-$deleteday.tgz"
答え2
find ... -mtime +2 -exec rm {} \;
またはそのようなもの:)