通过尾部和头部通过T形管道文件

时间:2013-05-20 19:48:32

标签: bash shell tee

here开始我尝试读取文件并发出文件的头部和尾部(仅读取文件一次)。

我尝试了以下内容: tee >(head) >(tail) > /dev/null < text.txt

这一行按预期工作,但我想摆脱/ dev / null。所以我尝试过: tee >(head) | tail < text.txt

但是这条线不能按预期工作(好吧,正如我预期的那样),它会打印头部,但之后不会返回。显然尾巴正在等待什么。但我不知道具体到底是什么。 我找到了这个SO question,但我无法用给定的答案运行它。

1 个答案:

答案 0 :(得分:5)

tee >(head) | tail < text.txt中,文本文件直接转到tail。你可能意味着

tee >(head) < text.txt | tail

哪个不等待任何东西,但也不起作用,因为T恤和头部的输出都是尾部。

将头部的输出重定向到新的文件描述符,然后将其恢复工作,但我不确定它比使用/ dev / null更“干净”:

( tee >(head >&3) < text.txt | tail) 3>&1