我知道这个问题已经被问过多次了,但是我没有找到其他答案。
这是一幅图像来说明我的观点:
您可以不斜视地阅读蓝线吗?没有?我也不。
我正在完整详细模式下运行ansible剧本,并且需要阅读包含50多个任务的剧本的日志。
谁能解释一下如何更改这些颜色?
我在没有解决方案的地方看了一些问题:
我知道这个问题已经被问过多次了,但是我没有找到其他答案。
这是一幅图像来说明我的观点:
您可以不斜视地阅读蓝线吗?没有?我也不。
我正在完整详细模式下运行ansible剧本,并且需要阅读包含50多个任务的剧本的日志。
谁能解释一下如何更改这些颜色?
我在没有解决方案的地方看了一些问题:
Answers:
不,从来没有能读过黑色的蓝色(而且寿命太短,无法在我可能使用的每个终端或控制台组合中摆弄颜色自定义设置),因此默认情况下禁用颜色。使用xterm
,.Xdefaults
输入:
XTerm*colorMode:false
做奇迹 否则,可能无法消除终端中的颜色,因此可能需要针对应用程序进行专门的修改;一种快速的方法是使用shell函数,并将与终端cat
断开连接的输出通过管道传递给管道,ansible
并可能导致其不发送垃圾邮件颜色:
function ansible-playbook {
command ansible-playbook "$@" | cat
}
另一个模糊的地方是打扰TERM
,例如TERM=vt220 ansible-playbook ...
(这在较旧的系统上通常很有效,但是TERM=vt220
在现代系统上会出现垃圾邮件a,并且在TERM
不知道您要进入的领域进行更改可能是个坏主意)。
然而!从ansible
消息来源的偷偷摸摸的角度来看,ansible 并不是越野车,它确实提供了一个ANSIBLE_NOCOLOR=1
环境变量:
ANSIBLE_NOCOLOR=1 ansible-playbook ...
ANSIBLE_NOCOLOR=1 ansible...
在控制台上没有什么用。
您可以指定在ansible中使用的颜色(至少可以在ansible 2.3.1.0中使用)。打开ansible.cfg并转到显示[colors]的部分,您应该看到类似以下的内容
[colors]
#highlight = white
#verbose = blue
verbose = green
#warn = bright purple
#error = red
#debug = dark gray
#deprecate = purple
#skip = cyan
#unreachable = red
#ok = green
#changed = yellow
#diff_add = green
#diff_remove = red
#diff_lines = cyan
只需取消注释要更改的文本类型并指定所需的颜色即可。
大多数应用程序坚持使用16种颜色(8种深色和8种亮色),称为ANSI颜色,因为这是几乎所有终端支持的公分母。ANSI标准未指定确切的阴影,只是表示“黑色”,“蓝色”,“红色”等。默认的蓝色阴影通常是纯蓝色,很难在RGB监视器的黑色背景上读取,但是好的终端模拟器可以让您配置颜色。通常,在颜色中添加一点红色和绿色足以使其可读但仍然鲜明。
使用xterm,PuTTY和其他兼容终端,您可以通过发出适当的转义序列来从终端内运行的应用程序配置颜色。启动应用程序之前,请尝试在终端中运行此命令:
## Set the blue hue (color 4) to CornflowerBlue
printf '\e]4;4;#6495ed\a'
如果您在打开终端时运行bash,请将其放入中.bashrc
。如果ansible应用程序自行打开终端,则使其将此转义序列打印到终端。
另外,许多终端可以让您在其配置中配置颜色,例如通过Xterm中的X资源。检查终端仿真器的文档。
可以在此处找到如何更改ansible中每种颜色的官方文档:https: //docs.ansible.com/ansible/latest/reference_appendices/config.html
如果使用深色背景,则无法读取详细的蓝色输出。
我在ansible.cfg中使用它
[colors]
verbose: bright blue
blue color
终端仿真器中的配置为更明显。