鉴于这个最小的例子
( echo "LINE 1" ; sleep 1 ; echo "LINE 2" ; )
Run Code Online (Sandbox Code Playgroud)
它输出LINE 1
,然后,一秒钟后LINE 2
,如预期的那样输出。
如果我们通过管道将其传输到 grep LINE
( echo "LINE 1" ; sleep 1 ; echo "LINE 2" ; ) | grep LINE
Run Code Online (Sandbox Code Playgroud)
正如预期的那样,行为与前一种情况相同。
如果,或者,我们通过管道将其传输到 cat
( echo "LINE 1" ; sleep 1 ; echo "LINE 2" ; ) | cat
Run Code Online (Sandbox Code Playgroud)
行为再次与预期相同。
但是,如果我们通过管道连接到grep LINE
,然后到cat
,
( echo "LINE 1" ; sleep 1 ; echo …
Run Code Online (Sandbox Code Playgroud)