每当我调用运行GCC时,它很好地格式化其输出(使文件名加粗,注意标签为白色,错误标签为红色等)。但是,当我想重定向它并仍然显示它时,格式化就会消失......
示例:
make # The display is formatted
(...)
make |& tee >(xargs echo > example.out) # The display is not formatted
(...)
如何在保持原始显示格式化的同时重定向输出?
答案 0 :(得分:1)
文档说(File: gcc-6.info, Node: Diagnostic Message Formatting Options
):
-fdiagnostics-color
[= WHEN]在诊断中使用颜色。时间是
never
,always
或auto
。 默认值取决于编译器的配置方式,它可以 是以上WHEN选项中的任何一个,如果never
也是GCC_COLORS
环境中不存在环境变量,auto
除此以外。auto
表示仅在标准错误时使用颜色 是一个终端。