# 遍历网站目录 for file in `ls -F $web_folder` do str_length=${#file}-1 backFile=$backup_folder${file:0:str_length}'_'$(date +"%Y%m%d_%H%M%S")'.tar.gz' tar_folder=$web_folder$file tar -cvf $backFile $tar_folder done
如果$web_folder内有不希望被打包的目录,可以在do中添加判断
1 2 3 4 5 6 7 8 9 10 11 12 13
# 遍历网站目录 for file in `ls -F $web_folder` do # 不备份localhost目录 if [ $file == 'localhost/' ]; then continue fi str_length=${#file}-1 backFile=$backup_folder${file:0:str_length}'_'$(date +"%Y%m%d_%H%M%S")'.tar.gz' tar_folder=$web_folder$file tar -cvf $backFile $tar_folder done
for db in $backup_db do backFile=$backup_folder$db'_mysql_'$(date +"%Y%m%d_%H%M%S")'.sql.gz' mysqldump -h$mysql_host -u$mysql_user -P$mysql_port -p$mysql_pass $db | gzip > $backFile done
上传OSS&清理压缩包
1 2 3 4 5 6 7 8 9 10 11 12 13
#如果当前目录下不存在oss上传工具,则下载 if [ ! -e 'ossutil64' ]; then wget https://gosspublic.alicdn.com/ossutil/1.7.1/ossutil64 && chmod 755 ossutil64 && ./ossutil64 config -e $oss_endpoint -i $oss_access_key -k $oss_access_key_secret -L CH --config-file ./config fi # 开始遍历上传 for file in `ls $backup_folder` do ./ossutil64 cp $backup_folder$file $oss_folder$file --config-file ./config rm $backup_folder$file done echo "备份成功"