beyondfly 发表于 2009-03-18 23:41

原帖由 haimming 于 2009-3-18 23:32 发表 http://bbs2.chinaunix.net/images/common/back.gif
waitting....除非有其它原因造成破裂了


如何理解

haimming 发表于 2009-03-18 23:45

一边完成了,别一边没完成的话,完成了的会等着啊

laotian555 发表于 2009-03-19 10:23

管道pipe是UNIX的一大发明,由UNIX大师DougMcIlroy发明,体现一种UNIX下的编程哲学“一个程序只做一件事情,并做好。”
windows 下自带的dir /s /w等就与这个相背离。

柳拂风 发表于 2009-03-19 10:29

原帖由 leetaedong 于 2009-3-18 12:16 发表 http://bbs3.chinaunix.net/images/common/back.gif

具体运行在什么情况呢.

有些人, 对这几个工具只懂点皮毛, 要得到自己想要的结果, 就只好并着一起使了.

像很多人就喜欢这样:cat urfile |grep word 或者 more urfile |grep word,
像这样都是 很坏的 ...


汗。。。我就有这种很坏的习惯

locale 发表于 2009-03-19 11:18

原帖由 leetaedong 于 2009-3-18 12:16 发表 http://bbs2.chinaunix.net/images/common/back.gif

具体运行在什么情况呢.

有些人, 对这几个工具只懂点皮毛, 要得到自己想要的结果, 就只好并着一起使了.

像很多人就喜欢这样:cat urfile |grep word 或者 more urfile |grep word,
像这样都是 很坏的 ...
没明白是什么意思,貌似我经常cat urfile |grep word 或者 more urfile |grep word,的,可是不着样做有什么更好的办法吗?

dream3401 发表于 2009-03-19 11:33

回复 #35 locale 的帖子

可以直接grep ... file呀

locale 发表于 2009-03-19 11:49

原帖由 dream3401 于 2009-3-19 11:33 发表 http://bbs2.chinaunix.net/images/common/back.gif
可以直接grep ... file呀
真有这个毛病

vbs100 发表于 2009-03-19 21:58

原帖由 leetaedong 于 2009-3-18 12:16 发表 http://bbs3.chinaunix.net/images/common/back.gif

具体运行在什么情况呢.

有些人, 对这几个工具只懂点皮毛, 要得到自己想要的结果, 就只好并着一起使了.

像很多人就喜欢这样:cat urfile |grep word 或者 more urfile |grep word,
像这样都是 很坏的 ...
正确的是
$ grep 'some word' urfile
但是更方便的是
$ <urfile grep 'some word'
这样可方便改 grep 的参数

还有经常用的
$ cat urfile | grep 'some word' | wc -l
其实直接可以用
$ <urfile grep -c 'some word'

jeozu 发表于 2009-03-21 00:15

据我所知,管道的一个作用的就是协同~~
不用等到第一个命令全部执行完采取执行第二个命令。
当第一个命令产生的部分结果已经做够第二个命令开始执行,那么,第二个命令就开始执行。
这样,就实现了多线程执行。
使用SAS做巨量数据处理时,经常使用这种方式,打开多个管道。但是管道的数量和效率跟计算机的硬件和程序直接相关,没有多就好或者少就好的说法。
如果出入,还请专家斧正~~

皇家救星 发表于 2009-03-21 10:22

回复 #31 beyondfly 的帖子

进程是同时启动的,不过管道右边的进程启动后会一直等待输入(假设它需要输入),也就是管道左边程序的输出
页: 1 2 3 [4] 5
查看完整版本: 管道是不是可以提高运行效率