我认为有些命令会过滤或作用于输入,然后将其作为输出传递给我stdout
-但是有些命令只会接受stdin
和并对其执行任何操作,而不会输出任何内容。
我对OS X最熟悉,因此立即想到的是pbcopy
和pbpaste
-这是两种访问系统剪贴板的方法。
无论如何,我知道如果我要输出stdout并把输出吐到两个stdout
文件中,则可以使用tee
命令。而且我对有所了解xargs
,但我认为这不是我想要的。
我想知道如何stdout
在两个(或多个)命令之间进行拆分。例如:
cat file.txt | stdout-split -c1 pbcopy -c2 grep -i errors
可能有比该示例更好的示例,但是我真的很想知道如何将stdout发送到不中继该命令的命令,同时又避免stdout
被“静音”-我不是在问如何对cat
文件和grep
部分并将其复制到剪贴板-具体命令不是那么重要。
另外-我不是在问如何将其发送到文件,并且stdout
-这可能是一个“重复”的问题(对不起),但是我进行了一些查找,只能找到正在询问如何在stdout和文件之间进行拆分的类似问题。 -这些问题的答案似乎是tee
,我认为这对我不起作用。
最后,您可能会问:“为什么不使pbcopy成为管道链中的最后一件事?” 我的回答是1)如果我想使用它并仍然在控制台中看到输出怎么办?2)如果我要使用两个stdout
在处理输入后不输出的命令怎么办?
哦,还有一件事-我意识到我可以使用tee
一个命名管道(mkfifo
),但是我希望可以通过一种简洁的方式内联地完成此操作,而无需事先设置:)