我的脚本从stdin接受一个流。我想要无论如何将第一行传递到stdout,并使用
我使用tee解决了这个问题,但我想知道这是否保证始终在
如果订单没有得到保证,那么正确的做法是什么?
-v
过滤其余的行并将其传递到stdout。我使用tee解决了这个问题,但我想知道这是否保证始终在
grep
之前打印head
的输出?如果head
被替换为阻塞20分钟才打印任何内容的东西,那么该输出是否会出现在grep
输出后的stdout末尾?tee >(head -n 1) >(tail -n +2 | grep -v -E "$PATTERN")
如果订单没有得到保证,那么正确的做法是什么?
head
只输出一行,但它很可能读取大于一个字节的块以查找第一个换行符,因此可能会消耗不止第一行。 - chepner