Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
字符^G在vim中是什么意思?_Vim_Character Encoding - Fatal编程技术网

字符^G在vim中是什么意思?

字符^G在vim中是什么意思?,vim,character-encoding,Vim,Character Encoding,我在Vim中打开一个XML文件,发现其中显示了大量的^M和^G符号。因此我尝试使用dos2unix删除^M符号,但它告诉我该文件是二进制文件,这使得它跳过了该文件。手动删除^G符号后,dos2unix正在成功处理该文件。我的问题是:^G在这里到底意味着什么?文件中的^G是否使其成为二进制文件?^G是贝尔字符。当文件显示在传统终端上时,当您到达该字符时,您将听到一声蜂鸣音。实际上,“二进制”文件和“文本”文件之间没有区别,所以dos2unix只是猜测,在这种情况下猜测是错误的。您可以使用选项-f强

我在Vim中打开一个XML文件,发现其中显示了大量的
^M
^G
符号。因此我尝试使用
dos2unix
删除
^M
符号,但它告诉我该文件是二进制文件,这使得它跳过了该文件。手动删除
^G
符号后,
dos2unix
正在成功处理该文件。我的问题是:
^G
在这里到底意味着什么?文件中的
^G
是否使其成为二进制文件?

^G
是贝尔字符。当文件显示在传统终端上时,当您到达该字符时,您将听到一声蜂鸣音。实际上,“二进制”文件和“文本”文件之间没有区别,所以
dos2unix
只是猜测,在这种情况下猜测是错误的。您可以使用选项
-f
强制它转换它认为是二进制的文件。

要添加到上述答案中,Ctrl-M通常也是与Windows使用的“\r\n”回车符相对应的行尾/换行符

您可以在这个问题的答案中阅读更多信息,其中包括一些将它们转换为unix样式的行尾的方法(如果需要):