来一发Linux下摹拟多线程的并发并发shell剧本
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!分享一个在Linux下摹拟多线程的并发剧本,利用这个剧本能够同时批量在界说数目的办事器上实行相干下令,比起一般for/while轮回只能按次一条一条实行的效力高十分多,在办理多量办事器时十分的有用。以下剧本功效是经由过程scp(也可选rsync)向上千台办事器传更新包,剧本运转后同时在背景有50个scp历程向办事器传包。
#!/bin/bash
ip=`catiplist.txt|grep-v"#"|awk{print$1}`#过滤办事器IP
dir=/usr/local/src#方针路径
thead_num=50#自界说并发数,依据本身办事器功能或使用调剂巨细,入手下手万万别界说太年夜,制止办理机宕机
tmp_fifo_file="/tmp/$$.fifo"#以历程ID号定名管道文件
mkfifo$tmp_fifo_file#创立一时管道文件
exec4$tmp_fifo_file#以读写体例翻开tmp_fifo_file管道文件,文件形貌符为4,也能够取3-9恣意形貌符
rm-f$tmp_fifo_file#删除一时管道文件,也可不删除
for((i=0;i<$thead_num;i++))#使用for轮回向管道中输出并发数目的空行
do
echo""#输入空行
done>&4#输入重导向到界说的文件形貌符4上
foriin$ip#轮回一切要实行的办事器
do
read-u4#从管道中读取行,每次一行,一切行读取终了后实行挂起,直到管道有余暇的行
{
scp-P1000$1$i:$dir#一切要批量实行的下令都放在年夜括号内,scp是一个复杂实例,可交换恣意其他下令及下令组,1000为办事器真个端口
sleep3#停息3秒,给体系缓冲工夫,到达限定并发历程数目
echo"">&4#再写进一个空行,使挂起的轮回持续实行
}&#放进背景实行
done
wait#守候一切背景历程实行完成
exec4>&-#删除文件形貌符
exit0
--------------------------------低调的支解线------------------------------------
假如办理机与其他办事器没有创建ssh信托,也可将expect主动应对下令增加到并发剧本的轮回体傍边,修正以下:
#!/bin/bash
ip=`catiplist.txt|grep-v"#"|awk{print$1}`
dir=/usr/local/src
answer="yes"#界说yes/no应对变量
passwd="123456"#办事器暗码
thead_num=50
tmp_fifo_file="/tmp/$$.fifo"
mkfifo$tmp_fifo_file
exec4$tmp_fifo_file
rm-f$tmp_fifo_file
for((i=0;i<$thead_num;i++))
do
echo""
done>&4
foriin$ip
do
read-u4
{
expect<<EOF
settimeout-1
spawnscp-P1000$1$i:$dir
expect"(yes/no)?"{
send"$answer"
expect"Password:"
send"$passwd"
}"Password:"{send"$passwd"}"*host"{exit1}
expecteof
EOF
sleep3
echo"">&4
}&
done
wait
exec4>&-
exit0
欢迎大家来到仓酷云论坛!
来一发Linux下摹拟多线程的并发并发shell剧本
不同于Windows?系统需要花钱购买,因为Linux的核心是免费的,自由使用的,核心源代码是开放的。 学习Linux半年了~个人认为不会的多在网上找资料网上有很多资料可以搜索到,LS那位说放手去搞。 任何一个叫做操作系统的东西都是这样子构成的:内核+用户界面+一般应用程序。 为什么要学Linux呢?每个人都有不同的看法,下面我说说自己的感想吧。? Windows有MS-DOS?方式,在该方式下通过输入DOS命令来操作电脑;Linux与Windows类似,也有命令方式,Linux?启动后如果不执行?X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。? 生成新的unispimsp.ksc。”另外得到回复后如果问题解决,向帮助过你的人发个说明,让他们知道问题是怎样解决的。 众所周知,目前windows操作系统是主流,在以后相当长的时间内不会有太大的改变,其方便友好的图形界面吸引了众多的用户。 熟悉系统的基本操作,Linux的图形界面直观,操作简便,多加上机练习就可熟悉操作,在Linux下学习办公软件等常用软件。
页:
[1]