您好,我正在寻找一些库或工具来在文本文件中呈现带有转义序列字符的文本。我不知道怎么调用它,但这里有一个例子:
~$ echo -e "abc\vdef"
abc
def
~$
~$ echo -e "abc\vdef" > /tmp/xxxxx
~$ vi /tmp/xxxxx
我在屏幕上看到了 abc^Kdef。
所以我正在寻找可以为我做这件事的工具:
~$ sometool /tmp/xxxxx > /tmp/yyyyy
~$ vi /tmp/yyyyy
I can get
abc
def
在 vi 窗口中。
\v只是一个例子,我需要转换\v、\b、\f等
致哈里斯基: 但我想要的是:
$~/:sometool /tmp/xxxxx > /tmp/yyyyy
在 python 中
>>> f=open('/tmp/yyyyyy').readlines()
>>> f[0]
>>> ['abc\n def']
在\n 和 def 之间有三个空格
最佳答案
shell 中的字符\v 在每个编辑器/工具中都有不同的表示。如果你对文件做一个猫,你仍然会得到你需要的东西
$ cat /tmp/xxxxx
abc
def
$
如果您在 python 中打开相同的文件,您将看到字符为\x0b。但是当你打印它时,它很好。
>>> f=open('/tmp/se').readlines()
>>> f[0]
['abc\x0bdef\n']
>>> print f[0]
abc
def
基本上这是一个表示的问题。如果您的要求是使用程序或工具读取文件,则表示应该不是问题。
关于bash - 使用转义序列呈现文本(如终端),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4396775/