答案1
如果你看稍后在正文中,作者讨论了他们所谓的“过滤器模式”,他们通过以下内容对此进行了扩展:
过滤时,切勿丢弃不需要的信息。这也增加了您的过滤器有一天可以用作其他程序的输入的可能性。您丢弃的信息是管道中后续阶段无法使用的信息。
作者通过提到grep
和来举例说明“过滤器模式” tr
。这两个实用程序就是他们所说的“ cat
-like”。除了执行其任务之外,它们不会删除或以其他方式修改在其输入流上接收到的数据,而是在其输出流上不加修改地再现该数据。例如,某些实现grep
并不严格遵守这些准则,而是通过插入颜色转义代码来修改数据;然而,这些实现仍然没有删除不必要的数据(例如删除不可打印的字符,以任意宽度截断输出,默认情况下以某种方式限制返回的行数或字节数,或以其他方式试图比用户更聪明)。