![同时使用 tee 和 grep (shell)?](https://linux22.com/image/557031/%E5%90%8C%E6%97%B6%E4%BD%BF%E7%94%A8%20tee%20%E5%92%8C%20grep%20(shell)%EF%BC%9F.png)
我正在尝试运行一个写入 $log(txt 文件)的服务器,然后查找日志文件中以 [1] 开头的所有文本并将其放入另一个文件中。这是我的尝试。tee -a $log
与其他所有命令一样有效。但是 grep 命令不行。
run="tail -n0 -f -s 0.01 $cmds | (while true; do $tron --userconfigdir $userconfigdir --userdatadir $userdatadir --vardir $var; done) | tee -a $log | grep '^\[1\]' > ${var}logs/chatlogs.log"
如何才能将以tee -a $log
[1] 开头的所有文本复制到另一个文件?
答案1
通常这样做是可以的:
tail -f /var/log/mylog | egrep '^<txttomatch>' | tee /tmp/watchlog
当然,如果您希望获得控制台输出以及复制到文件,则只需要 tee。如果您要启动和停止此过程,您可能需要将开关传递-a
给 tee。
答案2
运行它时你得到了什么?
尝试替代方案:
... tee -a $log >(grep '^\[1\]' > ${var}logs/chatlogs.log)