Chinaunix首页 | 论坛 | 博客
  • 博客访问: 339493
  • 博文数量: 105
  • 博客积分: 358
  • 博客等级: 一等列兵
  • 技术积分: 444
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-25 23:00
个人简介

爱生活,爱养生 www.sijiyang.com 欢迎朋友来友联

文章分类

全部博文(105)

文章存档

2017年(2)

2016年(2)

2014年(24)

2013年(34)

2012年(39)

2011年(4)

分类: LINUX

2012-01-01 13:28:13

#!/bin/bash
#!/bin/bash
#作者:罗红江
#QQ:123769752
#mail:g_linux@qq.com
#原创---请你转载说明出处,请支持别人的劳动成果。
#sendfile+backupfile
declare -i backup sfstat
backup=0  #备份1为备份
sfstat=0  #为sendproc 验证参数
#########################################################
IP="192.168.1.3"
##########################################################
main() #....
{
if (( $# < 1 ));then
   echo "$0 [<-r file or directory> ,<-s file or directory>]"
   exit
 else
 while getopts ":r:s:b:h" opt;
 do
   case $opt in
   s)
   sourcefile=$OPTARG
   sfstat=$sfstat+1
   ;;
   r)
   rpatch=$OPTARG
   sfstat=$sfstat+1
   ;;
   b)
   backup=1
   btype=$OPTARG
   ;;
   h)
   echo $0 "[-r ,-s ,-b]"
   echo "-r will sending remote file directory"
   echo "-s will sending source file or directory"
   echo "-b will backup file "
   ;;
   :)
        echo ">>> Error: '-$OPTARG' requires an argument"
        exit
   esac
  done
fi
ipdbo
}
send_proc() #....
{
 if (( $sfstat >=2 ));then  
   if [[ -e $sourcefile ]] ;then
         if (( $backup == 1 ));then
             bakupfile $1
         fi
      scp -r $sourcefile >>sdf.log
   else
      echo "no find $sourcefile">>sdf.log  
   fi
 fi
}
bakupfile() #....
{
if (( ${#btype} >2 ));then
bkname=${btype:2}
else
bkname=${btype}
fi
cd /root
ssh "find ${rpatch} -name ${btype} -exec tar -cvf  $1-$bkname.tar {} +"
}
 
ipdbo() #IP.
{
for i in ${IP[*]}
{
   send_proc   $i    
}
}
main $@
阅读(2146) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~