web服务器指定文件更新

  这些的脚本与以前的不同,以前写的脚本是把本地文件批量更新到外网服务器,由于网站改版,程序上会修改很多地方,每次更新不能大批量的更新,只能更新指定的文件才行。

    当程序问到我这个问题的时候,我就发难了,这个咋个操作了,我也没有及时的回复程序,我只是说我先找找思路,因为我知道如果这个脚本写不出来,那么以后更新东西的时候我每次都需要到外网服务器找到文件和内网提交文件的路径,还要给程序的确认,为什么要他们确认,就是为了防止更新错啊,这也是为了保险,如果更新出错,那也可以找程序配合,挽救啊,如果不找他们确认出了错,那就真的就只有我一个人抗,不懂程序咋个抗吗

    下面是我测试过的脚本基本上可以满足指定文件更新了:

  
  
  
  
  1. #!/bin/bash 
  2. #update file 
  3. read -p "please file path:" path 
  4. filetype=`file $path | awk '{print $2}'
  5. ls -ld $path >/dev/null 2>&1 
  6. if [ $? -eq 0  ] ;then 
  7.   ssh 192.168.10.11 "ls -ld $path" >/dev/null 2>&1 
  8.     if [ $? -eq 0  ];then 
  9.       if [ $filetype = directory  ];then 
  10.         echo "n:$path" 
  11.         echo "w:$path" 
  12.         read -p  "This is directory,continue(y/n):" jx 
  13.         if [ $jx = y ];then 
  14.           rsync -avzR $path 192.168.10.11:/ 
  15.         fi 
  16.       else 
  17.         read -p "This is file,continue(y/n):" jx1 
  18.         if [ $jx1 = y  ];then 
  19.           rsync -avz  $path 192.168.10.11:$path 
  20.         fi 
  21.       fi 
  22.     else 
  23.       read -p "File or directory does not exist,continue(y/n):" panduan 
  24.         if [ $panduan = y ];then 
  25.           rsync -avzR $path 192.168.10.11:/ 
  26.         else 
  27.           echo "Execution is stopped!!" 
  28.         fi 
  29.     fi 
  30. else 
  31.   echo "The file path does not exist!!!" 
  32. fi 

 

你可能感兴趣的:(web服务器)