gpt4 book ai didi

bash - 在将 tee 发送到文件之前,如何从 tee 获取 "process"文本

转载 作者:行者123 更新时间:2023-11-29 09:40:28 25 4
gpt4 key购买 nike

有没有办法在发送到文件之前处理来自 tee 的文本?

例如,如果程序输出以下行:

stack 11
stack 22
stack 33
serverfault
serverfault
stack 44

我如何才能仅将包含“堆栈”的行发送到文件,同时仍通过标准输出显示程序的原始输出?

我不确定是否可以使用 tee 做到这一点,所以我愿意接受任何其他建议。

谢谢

最佳答案

在将过滤后的输出保存到文件的同时在终端上显示 myprogram 的完整输出:

myprogram | tee /dev/tty | grep stack >out

如果您不想将完整的输出发送到您的终端,而是想用其他东西来处理它,比如 someotherprogram,那么我们可以使用 bash 的进程替换:

myprogram | tee >(grep stack >out) | someotherprogram

someotherprogram 在其 stdin 上接收 myprogram 的完整输出,而只有过滤后的输出保存在 out 中。

关于bash - 在将 tee 发送到文件之前,如何从 tee 获取 "process"文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23025369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com