在python中处理终端颜色代码(ANSI颜色转义码)

时间:2017-01-31 17:20:09

标签: python openwrt

enter image description here

我应该编写一个可以通过UART与串行设备通信的PyQt应用程序。我将它连接到基于OpenWRT的路由器,当我试图运行“#s;'在它上面,输出(见附带的截图)在文件夹名称周围有一些奇怪的字母。我知道这些是某种颜色代码。如何从输出中删除这些或相应地显示颜色。 任何帮助都会有所帮助。

1 个答案:

答案 0 :(得分:2)

请参阅 ls (1)的手册页以及命令的输出

$  command -v ls

在我的Linux系统上,报告

$ command -v ls
alias ls='ls --color=auto'

生命中的事实是,Unix交互式shell无法可靠地确定所连接终端的特性,并且令人遗憾的是GNU着色对终端无动于衷。当与不想要颜色的设备连接时,最好的计划就是在它出现的任何地方关闭它。

要测试一下,一个快速的诀窍就是键入" ls"这样:

$ \ls

介绍性反斜杠会破坏shell的别名机制,并恢复使用裸/usr/bin/ls或任何PATH耗材。