我正在使用此代码将所有终端的输出写入文件
exec > >(tee -a "${LOG_FILE}" )
exec 2> >(tee -a "${LOG_FILE}" >&2)
如何告诉它停止?例如,如果我不希望某些输出进入日志..
谢谢!
答案 0 :(得分:1)
目前还不完全清楚你的目标是什么,但这里有一些尝试。
您知道script
实用程序吗?您可以运行script myTerminalOutputFile
,之后的任何命令和输出都将被捕获到myTerminalOutputFile
。缺点是它捕获了一切。你会看到有趣的屏幕控制字符,如^[[5m;27j
。所以做一个快速测试,看看它是否适合你。
要完成捕获输出,只需键入exit
,然后返回到父shell cmd-line。
警告:请检查man script
,了解有关特定操作系统脚本版本固有的时髦性的详细信息。有些人比其他人好。在这种情况下,script -k myTerminalOutputFile
可能会更好。
IHTH
答案 1 :(得分:0)
你可以通过" sed"然后发球到日志文件