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