如何在Python中去除字符串中的\x1b

0 投票
1 回答
3133 浏览
提问于 2025-04-16 13:45

我有一个文本文件,里面列出了很多文件的名字。
我想把这些文件复制到一个特定的位置。

我有以下的代码:

f= open("filename")
l = f.readline()
while l:
    cmd = "cp {0}/{1} {2}".format(indir,l.strip(),outdir)
    commands.getstatusoutput(cmd)

但是当我读取这个文件时,每一行的左边都有 "\x1b[00m\x1b[00m" 的内容,右边则有 "\x1b[00m"。我该怎么去掉这些多余的内容呢?

提前谢谢你!

1 个回答

0

虽然你可以让Python帮你做到这一点,但我觉得你文件里有VT100转义序列这件事挺奇怪的。在评论中你提到了生成这个文件的命令。我建议你大部分文件操作可以使用shutil模块os.listdir函数来完成。

不过,如果你想用ls命令生成一个没有奇怪转义序列的文件名列表,可以这样做:

/bin/ls patter*.txt >filename

这样做会强制系统运行真正的ls命令,而不是使用任何设置的别名。

撰写回答