python多线程执行shell_python与shell多线程区别

#!/bin/bash

start_time=`date +%s`              #定义脚本运行的开始时间

[ -e /tmp/fd1 ] || mkfifo /tmp/fd1 #创建有名管道

exec 3<>/tmp/fd1                  #创建文件描述符,以可读()的方式关联管道文件,这时候文件描述符3就有了有名管道文件的所有特性

rm -rf /tmp/fd1                    #关联后的文件描述符拥有管道文件的所有特性,所以这时候管道文件可以删除,我们留下文件描述符来用就可以了

for ((i=1;i<=2;i++))

do

echo >&3                  #&3代表引用文件描述符3,这条命令代表往管道里面放入了一个"令牌"

done

for ((i=1;i<=6;i++))

do

read -u3                          #代表从管道中读取一个令牌

{

/bin/bash /data/.trash/$i.sh

echo 'success'$i

echo >&3                  #代表我这一次命令执行到最后,把令牌放回管道

}&

done

wait

stop_time=`date +%s`  #定义脚本运行的结束时间

echo "TIME:`expr $stop_time - $start_time`"

exec 3

exec 3>&-                      #关闭文件描述符的写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值