xinjiang 发表于 2018-8-27 13:04:02

shell 递归函数---循环拷贝文件到指定目录

#!/bin/sh  
recursive( )
  
{
  
   for file in $1
  
   do
  
       subfile=`ls $2$3/$file`
  
       for subsubfile in $subfile
  
       do
  
#               echo $subsubfile
  
         if [ "$subsubfile" == "$2$3/$file" ]
  
         then
  
                rm -rf $3/$file
  
                mv $subsubfile $3/$file
  
         else
  
                recursive `ls $2$3/$file` $2 $3/$file;
  
         fi
  
       done
  
   done
  
}
  
cd /tmp
  
mkdir update;
  
tar -zxvf update.tgz -C update;
  
chmod -R 755 /tmp/update/*;
  
rootdir="/tmp/update"
  
filelist=`ls /tmp/update/`
  
for file in $filelist
  
do
  
subfile=`ls $rootdir/$file`
  
for subsubfile in $subfile
  
   do
  
   if [ "$subsubfile" != "$rootdir/$file" ]
  
   then
  
      $(recursive `ls $rootdir/$file` $rootdir /$file)
  
      # rm -rf /$file/$subfile
  
      # mv $rootdir/$file/$subsubfile /$file
  
      break 1;
  
   else
  
      kill -9 `ps|grep $file`
  
      rm -f /usr/bin/$file
  
      mv $rootdir/$file /usr/bin
  
   fi
  
done
  
done
  
#reboot


页: [1]
查看完整版本: shell 递归函数---循环拷贝文件到指定目录