cat /tmp/test
:
>> cat /tmp/test
Hello World
Hello World
Hello World
Hello World
vim /tmp/test
:
>> vim /tmp/test
==>
1 ^[[1;31mHello World^[[0m
2 ^[[2;32mHello World^[[0m
3 ^[[5;33mHello World^[[0m
4 ^[[6;34mHello World^[[0m
对不起,我已经在谷歌上搜索过了,但我仍然不知道如何让vim /tmp/test
显示与cat /tmp/test
相同的内容。
你能帮我一把吗?谢谢
如果你问为什么"垃圾"字符出现在Vim中每行的开头和结尾,而不是cat,原因可能是它们格式化了shell用来给文本上色的转义序列。由于cat将其输出直接发送到shell,所以转义序列被解释为格式化命令,从而生成彩色文本。Vim的设计并不是为了使用这些格式化序列,所以它只是将它们作为文本的一部分显示。
要去掉转义符,可以手动删除它们,也可以使用sed之类的工具将它们过滤掉,如下所示。
要查看生成的输出(如shell中所示),您可能需要使用AnsiEsc插件。在用这样的转义码打开文件后,应该运行:AnsiEsc
,它将被高亮显示。