Answers:
听起来该tee命令将执行您想要的操作。
关键是要用
>( )
用于流程替换。使用tee,请使用以下模式:
tee >(proc1) >(proc2) >(proc3) | proc4
因此,如果您要将的输出ls用作两个不同grep程序的输入,请将每个输出保存grep到不同的文件,然后将所有结果通过管道传输到less,请尝试:
ls -A | tee >(grep ^[.] > hidden-files) >(grep -v ^[.] > normal-files) | less
的结果ls -A将“传递”到两个greps中。该文件hidden-files将具有第一个输出的内容grep,normal-files并将具有第二个的结果grep。 所有文件将显示在寻呼机中 编辑:你看到的less。less是完全相同的输出的ls -A,而不是结果grep秒。如果你想修改从输出ls -A到less(例如交换等都正常文件是隐藏的问题之前列出的顺序),那么试试这个:
ls -A | tee >(grep ^[.]) >(grep -v ^[.]) >/dev/null | less
如果不使用>/dev/null,则greps 的输出将附加到的输出上,ls -A而不是替换它。