我想运行一个命令,然后在屏幕上显示输出并将其输出到日志文件,目前我使用tee -a
,但问题是tee
不保留颜色,目前我还没有找到一种方法去做。
答案1
tee
对颜色一无所知。但某些应用程序仅在其输出进入终端时才产生彩色输出,而不是在输出进入常规文件或管道时产生彩色输出。在这种情况下,请检查应用程序是否可以被告知生成彩色输出。例如,在OSX下,ls
需要设置环境变量CLICOLOR_FORCE
。
如果应用程序在其输出是终端且无法配置时表现不同,则在终端中运行它。这script
实用程序在终端中运行命令并记录输出、转义序列、屏幕重绘等。
script -q brew.log brew …
(但是brew不是已经保留日志了吗?也许如果你设置了HOMEBREW_LOGS
?)