你有subprocesss.Popen在stdout / stderr中保留颜色吗?

时间:2016-06-28 19:33:12

标签: python python-2.7 popen

我有以下代码:

<% if user_allowed %>

哪个工作正常,除了它删除了所有发出的颜色。有没有办法保留这个?

2 个答案:

答案 0 :(得分:3)

您没有指定whan cmd,但是当某些程序确定其标准输出未实际连接到终端时,某些程序不会在终端上发出彩色输出所需的escape sequences。 / p>

根据程序的不同,您可能会或可能无法覆盖该程序。

使用ansible,您可以将force_color配置变量设置为1以强制输出颜色。

答案 1 :(得分:0)

在Python脚本的顶部添加以下内容。

import os
os.environ['ANSIBLE_FORCE_COLOR'] = "TRUE"

现在,如果您使用subprocess.Popen从Python运行Ansible,它将打印颜色。