# /bin/bash! dir_arr[0]="/usr/phpprj/labourunionserver/public/Uploads" dir_arr[1]="/usr/phpprj/newwatercatserver/public/Uploads" dir_arr[2]="/var/www/app.tjzhxx.cn/public/Uploads" dir_arr[3]="/var/www/watercatwebsite/public/upload" dir_arr[4]="/var/www/watercatwebsite/public/file" back_public="/mnt/cosfs/backpublic" #back_public="/var/wj/backpublic" back_public_base=$back_public"/$(date "+%Y%m%d%H%M%S")" log_file=$back_public_base"/log.log" if [ ! -d "$back_public_base" ] then mkdir -p "$back_public_base" fi if [ ! -f "$log_file" ] then touch "$log_file" fi OLD_IFS="$IFS" IFS="/" for i in "${!dir_arr[@]}" do dir="${dir_arr[$i]}" arr=($dir) echo "$i"-"$dir" $(date "+%Y-%m-%d %H:%M:%S") backup start >> "$log_file" backfielpath="$back_public_base"/"${arr[3]}" if [ ! -d "$backfielpath" ] then mkdir -p "$backfielpath" fi if [ -d "$dir" ] then cd "$dir" backfile="$backfielpath"/"${arr[5]}".tar.gz tar -czf "$backfile" * fi echo "$i"-"$dir" $(date "+%Y-%m-%d %H:%M:%S") backup end >> "$log_file" done IFS=$IFS_OLD find "$back_public" -type d -mtime +7 -exec rm -rf {} \;