高并发拷贝脚本

#!/bin/bash
#cat /root/hosts.conf
#node-1 #需要做/etc/hosts映射
#node-2 #hosts.conf里,#开头可以自动过滤该主机
#node-3
#需要提前做免密,注意是否使用root用户,非root需要改hosts.conf地址。
#默认是30并发,可以修改值。该值要根据服务器cpu核数。极限目前还没测试过,目前自己使用应该比ansible性能高。
node=`cat /root/hosts.conf |grep -v ^# `
start_time=`date +%s`
[ -e /tmp/fd1 ] || mkfifo /tmp/fd1
exec 3<>/tmp/fd1
rm -rf /tmp/fd1
for ((i=1;i<30;i++))
do
  echo >&3
done

for i in $node
do
read -u3
  {
  scp -o ConnectTimeout=1 -r $1 root@"$i":$2
  echo "========================================$i=========================================="
  echo >&3
  }&
done
wait
end_time=`date +%s`

echo "执行时间:`expr $end_time - $start_time`"
exec 3<&-
exec 3>&-
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值