如何解决将stdout重定向到文件,并将tee stderr重定向到同一文件 如果您不需要完美的订购如果您需要完美的订购
我正在运行一个命令(很有可能)将文本输出到stderr和stdout。我想将stderr和stdout都保存到同一文件,但是我只想将stderr打印到终端。
我该如何使用它?我已经尝试过mycommand 1>&2 | tee file.txt >/dev/null
,但不会在终端上显示任何内容。
解决方法
如果您不需要完美的订购
使用tee
的两个单独副本,都以追加模式写入同一文件,但是只有其中一个随后将内容转发到/dev/null
时,您将获得所需的位置:
mycommand \
2> >(tee -a file.txt >&2) \
> >(tee -a file.txt >/dev/null)
如果您需要完美的订购
请参见Separately redirecting and recombining stderr/stdout without losing ordering
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。