以一个基准站进行同步当前服务器所有其他站点,可以更新文件夹/文件

#!/bin/bash
# 备份路径
tmp="/backup/tmp"
# 运行环境路径
run="/data/mystack/sites"
# 主站(基准站的文件夹名称, 所有站以这个网站为准)
main="此处填写基准站文件夹名称" 
# 备份时添加时间
time=$(date "+%Y%m%d%H%M%S")
# 需要同步的目录或文件 (结尾不要有"/")
dir[${#dir[@]}]="/www/wjj
dir[${#dir[@]}]="/www/test.jpg"

cd $run
[ ! -d "$tmp" ] && mkdir -p "$tmp"
find . -maxdepth 1 -type d ! -name '.' ! -name '*_dummy*' ! -name '*test*' ! -name "*$main*" -name '*sdjnck*' -exec basename {} \; | while read -r site; do
  for tail in ${dir[@]}; do
    path="$run/$site$tail"
    if [ -e $path ]; then
      if [ -d $path ]; then
        mv $path $tmp/${tail##*/}_${site%%.*}_$time
      else
        mv $path $tmp/$(basename "$tail" | cut -d. -f1)_${site%%.*}_$time.${tail##*.}
      fi
    fi
    [ ! -d "$(dirname $path)" ] && mkdir -p "$(dirname $path)"
    [ ${tail##*/} != "caches_template" ] && cp -ru $run/$main$tail $(dirname $path)
  done
  echo ${site%%.*} "同步完成!"
done
echo "--------------------------------------"
echo "基准网站:"$main
echo "备份目录:"$tmp
echo "服务器时间:"$(date "+%Y年%m月%d日 %H时%M分%S秒")
echo "所有网站同步完成!"
echo "--------------------------------------"

运行:sh 脚本文件名
如:sh test.sh