Bash Script для удаления файлов старше 1 недели с помощью AWS - PullRequest
0 голосов
/ 10 октября 2019

В настоящее время я работаю над сценарием для удаления файлов с сервера, возраст которых превышает одну неделю. Я использую AWS-CLI.

В настоящее время скрипт удаляет все, а затем завершает резервное копирование. Я хотел бы сохранить не менее 7 дней и удалять только файлы, возраст которых составляет неделю или более.

domain=( mydomain.com )
sqldb=( mydb )
opath=$HOME/backup/
mysqlhost=mysql.mydomain.com
username=myuser
password=password
webdir=$HOME/myfolder
today=$(date +%m-%d-%Y)
week=$(date --date='1 week ago' '+%m-%d-%Y')

for (( i = 0; i < ${#domain[@]}; i++))
do
        cpath=$opath${domain[$i]}
        if [ -d $cpath ]
        then
                filler="just some action to prevent syntax error"
        else
                echo Creating $cpath
                mkdir -p $cpath
        fi
        mysqldump -c -h $mysqlhost --user $username --password=$password ${sqldb[$i]} > ${cpath}/"$today"_${sqldb[$i]}.sql
        zip -r ${cpath}/"$today"_"$domain".zip $webdir

done

#delete objects older than 7 days
# aws --endpoint-url https://objects-us-east-1.dream.io s3 rm s3://my-bucket/file.txt
aws --endpoint-url https://objects-us-east-1.dream.io s3 rm --recursive s3://mybackups | grep $week

#use aws-cli to upload to DreamObjects
aws --endpoint-url https://objects-us-east-1.dream.io s3 sync $opath s3://mybackups/backups/ --exclude "$opath"mybackups.com-backup.sh

#delete backup from web server
find $HOME/backup/* -type d -exec rm -rf {} \; 2> /dev/null
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...