shell脚本编写某一文件夹内拷贝某一段文件(有则跳过没有则拷贝)

  • 必须是同一台服务器下,或者挂载目录,不同服务器下没办法查询目录中是否有该文件

  • 如果不在同一服务器下,可以把要查询的那个服务器的文件夹设置共享挂在到当前服务器

  • 或者可以把脚本写到要拷贝的服务器上,那么scp的时候要将拷贝的文件前面加上服务器ip等 --> root@192.168.229.131:

    •  1 #!/bin/bash
       2 for ((i1=1;i1<=5;i1++))
       3 do
       4     for((j1=1;j1<=2;j1++))
       5     do
       6         cd /root/321321/ #进入源文件所在的目录
       7         r=`find . -name "$i1-$j1.txt"` #寻找当前文件夹符合条件的文件
       8         if [ "$r"x == "./$i1-$j1.txt"x ]; then 
       9             continue     #跳过           
      10         else
      11             scp -r /root/123123/$i1-$j1.txt root@192.168.229.131:/root/321321
      12             (例:scp -r root@192.168.229.131:/root/123123/$i1-$j1.txt root@192.168.229.132:/root/32132113         fi
      14      done
      15 done
原文地址:https://www.cnblogs.com/lxyuuuuu/p/9895181.html