shell脚本多进程并发写法实例(高阶修炼)

现实工作场景中有很多为了实现快速处理,而采用并发执行.其他语言实现并发非常容易.

那么shell脚本最为linux上面最友好的脚本语言能实现并发嘛?

答案是必须的哈!~

那么波哥这里就写个例子分享给大家哈!~

#!/bin/bash
#并发数
pnum=6
#想要执行的函数
task () {
echo "$u start"
sleep 5
echo "$u done"
}


FifoFile="$$.fifo"
mkfifo $FifoFile
exec 6<>$FifoFile
rm $FifoFile


for ((i=0;i<=$pnum;i++));do echo;done >&6
#执行20次
for u in `seq 1 20`
do
read -u6
{
#调用函数
task
#并发执行函数打印结果日志
[ $? -eq 0 ] && echo "${u} 次成功" || echo "${u} 次失败"
echo >&6
} &
done
wait
exec 6>&-

套用上面的例子就可以实现并发处理了哈!~

如果觉得有用别忘了帮波哥转发分享哦!~

关注

绝对干货的公众号


推荐阅读

实战项目--kkitDeploy(客户端版)(强推,已开源)

实战项目--kkitDeploy(PaaS版)(强推)

实战项目--kkit3.0功能介绍(强推)

实战项目--kkit1.0功能介绍(强推,已开源)

经历贴之---外包接活却坐牢456天完整记录(强推)

脚本之---短信轰炸机

脚本之---QQ微信轰炸机

ansible---一键搭建redis5.0.5集群

工具之---地表最强CMDB自动抓取工具

elk7.9真集群docker部署文档

全球最全loki部署及配置文档

最强安全加固脚本2.0

点小花花,让他们知道你“在看”

990898479a51e42e7812f88a7f4d9237.gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值