我制作了一个小程序,用 更新 Homebrew brew update
,然后将输出发送到日志文件,但我也想将其保留在终端上,所以我使用tee
.问题是,它不显示颜色,例如,当我收到此错误消息时:
Error: Failed to update tap: caskroom/cask
该单词Error
应该是红色的,但用 输出时却不是红色的tee
。我还没有找到解决这个问题的方法,所以有人知道该怎么做吗?
答案1
与大多数默认情况下生成彩色文本输出的实用程序一样,brew
如果输出不直接发送到终端,则该实用程序将从其输出中删除颜色代码。
通过设置HOMEBREW_COLOR
实用程序的环境变量,brew
即使您将其通过管道传输到某个命令,您也可以强制生成彩色输出:
HOMEBREW_COLOR=1 brew update | tee brew-update-colour.log
这在手册的“环境”部分中有记录brew(1)
:
HOMEBREW_COLOR
如果设置,则强制在非 TTY 输出上输出颜色。