syncto.sh 1019 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #改变工作目录到当前脚本所在路径
  2. if [[ "$0" =~ / ]]; then cd "${0%/*}"; fi
  3. args="$* "
  4. if [[ "$args" = " " ]]; then
  5. echo="usage: ./syncto.sh 47 128 221 "
  6. exit 0
  7. fi
  8. echo "args='$args'"
  9. host47=47.92.151.165
  10. user47=matrix
  11. pass47=TmF0c0V0Y2RQYXJzZXI
  12. host128=10.100.30.128
  13. user128=root
  14. pass128=VWluby5jb21eNzg5KQ
  15. wcmd128="su - matrix"
  16. host221=10.100.30.221
  17. user221=root
  18. pass221=VWluby5jb21eNzg5KQ
  19. wcmd221="su - matrix"
  20. mqlpath=`go env GOPATH | awk -F ':' '{print $1}'`/bin/matrix/mql
  21. cd ${mqlpath}
  22. while [[ "${args}" != "" ]]; do
  23. an=`echo $args | awk -F ' ' '{print $1}'`
  24. ip=`eval "echo $""{host${an}}"`
  25. user=`eval "echo $""{user${an}}"`
  26. pass=`eval "echo $""{pass${an}}"`
  27. wcmd=`eval "echo $""{wcmd${an}}"`
  28. args=`eval "echo $""{args:${#an}}"`
  29. echo "$an: $ip"
  30. if [[ "${ip}" != "" ]]; then
  31. msh "a=${pass}" c="rsync -avz --delete --exclude=*.count --exclude=*.lock --exclude=*.log --exclude=*.conf . ${user}@${ip}:/opt/matrix/test"
  32. sleep 2
  33. fi
  34. done