Linux 删除 颜色转义字符 乱码 \x1b

news/2024/10/19 6:26:29/

目录

Linux颜色控制

方式一:添加sed正则命令

方式二:将输出写入文件再读取

Git颜色控制


使用Python paramiko ssh 获取 git 输出时,出现乱码,实际上是终端输出的ANSI颜色转义字符,用于控制终端颜色展示:

\x1b[?1h\x1b=\r  master\x1b[m\r\n

Linux颜色控制

可以通过以下方式删除ANSI颜色转义字符:

方式一:添加sed正则命令

source /etc/profile; git branch | sed -r "s/\x1B\[[0-9;]*[a-zA-Z]//g"

注:以上正则命令 \x1B\[[0-9;]*[a-zA-Z] 通过python正则只能清除部分颜色转移字符,原因不明:

import redef remove_color_escape_sequences(log_string):pattern = r'\x1B\[[0-9;]*[a-zA-Z]'cleaned_string = re.sub(pattern, '', log_string)return cleaned_string# 示例用法
log_string = '\x1b[?1h\x1b=\r  master\x1b[m\r\n'
cleaned_log_string = remove_color_escape_sequences(log_string)
print([cleaned_log_string])
# 输入:'\x1b[?1h\x1b=\r  master\x1b[m\r\n'
# 输出:'\x1b[?1h\x1b=\r  master\r\n'

注:因控制台支持ANSI颜色转移字符解析,因此直接打印字符串无法看出其中的ANSI颜色转移字符,可将字符串写入列表查看

方式二:将输出写入文件再读取

source /etc/profile; git branch > log.txt; cat log.txt; rm -rf log.txt

Git颜色控制

git本身也有控制颜色展示的配置,但只能控制颜色部分,头尾的ANSI颜色转义字符并不能去除:

source /etc/profile# 开启颜色显示
git config --global color.branch auto
git config color.branch auto# 关闭颜色显示
git config --global color.branch never
git config color.branch never

注:

  • 加载source /etc/profile才能生效
  • 关闭和开启需要对应,如果使用git config color.branch never命令关闭,则必须使用git config color.branch auto命令开启

对应的输出有2行:

# auto
['\x1b[?1h\x1b=\r* \x1b[32m(HEAD detached at 6e7e42203a)\x1b[m\x1b[m\r\n', '\r\x1b[K\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b[?1l\x1b>']
# never
['\x1b[?1h\x1b=\r* (HEAD detached at 6e7e42203a)\x1b[m\r\n', '\r\x1b[K\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b[?1l\x1b>']

 

 ChatGPT真是个好东西!


http://www.ppmy.cn/news/860270.html

相关文章

vue自定义生成海报

1.安装插件 npm i vue-canvas-poster --save 2.多端生成网站 快速开始 | fastposter官方文档 1.在main中引入 import VueCanvasPoster from vue-canvas-poster Vue.use(VueCanvasPoster) 2.页面配置以及引用 <template><div class"filmManagerBox"><…

买电脑的原因

长大以后刚上班&#xff0c;那会电脑奇贵无比。买一台像样一点的电脑&#xff0c;要存一年的钱才能够买到。可我还是会去这样做&#xff0c;就是因为想要玩电脑游戏。还有一点&#xff0c;就是我的耐心足够好。

如果用户的计算机的配置较差,买电脑怎么看配置?电脑购买须知【详解】

电脑配置是衡量一台电脑性能的标准&#xff0c;我们在购买电脑时必须考虑电脑的配置问题。在购买电脑前&#xff0c;我们要明确这台电脑购得后的用途&#xff0c;根据不同的用途才能选择不同的配置&#xff0c;才能选到自己心仪的电脑。明确需求后&#xff0c;要考虑自己需要的…

买电脑的烦恼

想配一台自用台式机&#xff0c;好久没去看硬件&#xff0c;现在产品线太多了&#xff0c;不知道选什么好&#xff0c;初步决定就用p4 2.8吧&#xff0c;双核那个东西还是先不用为好&#xff0c;能跑vs2005和数据库就可以了&#xff0c;再加个一般的显卡&#xff0c;偶而玩一下…

装什么软件测试笔记本耐用,我买了新电脑,用什么软件测试比较好?

以下软件可到天空软件站下载 1、EVEREST EVEREST(原名AIDA32)一个测试软硬件系统信息的工具&#xff0c;它可以详细的显示出PC每一个方面的信息。 EVEREST不仅支持了上千种(3400)主板&#xff0c;而且支持上百种(360)显卡&#xff0c;支持对并口/串口/USB这些PNP设备的检测&…

中国现在小学要求计算机课吗,为什么说刚进学校不要买电脑?是用不到吗?

原标题&#xff1a;为什么说刚进学校不要买电脑&#xff1f;是用不到吗&#xff1f; 现在计算机行业慢慢壮大了起来&#xff0c;学校计算机的课程自然也越来越多&#xff0c;就算你是学计算机的&#xff0c;但是很多学校也不需要你自己带电脑&#xff0c;甚至有一些学校不推荐你…

关于刚使用自己的电脑的建议

对电脑了如指掌的老油条可以跳过&#xff0c;以下是我个人使用的经验见解&#xff1a; 笔记本电脑一般只有C、D两个盘&#xff0c;C盘用于存放系统的文件&#xff0c;一般内存一百多G&#xff0c;不是很大&#xff0c;所以安装的软件路径不要选择C盘&#xff0c;各个软件的缓存…

终于给自己买了台电脑

来上海3年了&#xff0c;还是搞IT的&#xff0c;不配台电脑太对不起自己了。 NND&#xff0c;上周4去了躺太平洋&#xff0c;搬了台回家。 配置如下&#xff1a; cpu : AMD 64位&#xff0c;939 1800 memory : 海盗船 512M * 2 MainBoard : 华硕 890-9-sec 显卡 : 蓝宝石…