首页 > 代码库 > shell——mkfifo管道
shell——mkfifo管道
转自:http://blog.sina.com.cn/s/blog_605f5b4f0101azuc.html
创建命名管道的方法为:mkfifo pipe_name。
这样就能创建一个命名的管道pipe_name。
运行命令并把输出重定向到管道并扔后台(否则会hang住):cmd > pipe_name &
读取管道内容:cat < pipe_name便可读取管道中的内容。
tmp_fifofile="/tmp/$$.fifo" mkfifo $tmp_fifofile # 新建一个fifo类型的文件 exec 6<>$tmp_fifofile
# 将fd6指向fifo类型,如果没有这句,在向文件$tmp_fifofile或者&6写入数据时,程序会被阻塞,直到有read读出了管道中的数据位置,
而执行了上述之后,可以在程序运行期间不断向fifo类型文件写入数据而不会阻塞,并且数据会被保存下来以供read程序读出。 for ((i=0;i<$thread;i++));do bash管道echo bash管道done >&6 # 事实上就是在fd6中放置了$thread个回车符
shell——mkfifo管道
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。