linux下使用vim替换文件中的^M换行符
2014-07-11 13:39
302 查看
在linux下打开windows编辑过的文本,会出现由于换行符不一致而导致的内容格式错乱的问题。最常见的就是出现^M 。
我出现的问题是:在windows编辑过的文件,传到linux上后再用vim打开,内容没有换行。也就是所有文件内容都在一行。然后再实际换行的位置多了个^M。
下面的方法是网上搜的。其中dos2unix还有一个相对应的unix2dos
1.使用dos2unix命令。一般的分发版本中都带有这个小工具(如果没有可以根据下面的连接去下载),使用起来很方便:
$ dos2unix myfile.txt
上面的命令会去掉行尾的^M。
2.使用vi的替换功能。启动vi,进入命令模式,输入以下命令:
:%s/^M$//g # 去掉行尾的^M。
:%s/^M//g # 去掉所有的^M。
:%s/^M/[ctrl-v]+[enter]/g # 将^M替换成回车。(我是用这个方法调好的)
:%s/^M/\r/g # 将^M替换成回车。
3.使用sed命令。和vi的用法相似:
$ sed -e ‘s/^M/\n/g’ myfile.txt
注意:这里的“^M”要使用“CTRL-V CTRL-M”生成,而不是直接键入“^M”。
我出现的问题是:在windows编辑过的文件,传到linux上后再用vim打开,内容没有换行。也就是所有文件内容都在一行。然后再实际换行的位置多了个^M。
下面的方法是网上搜的。其中dos2unix还有一个相对应的unix2dos
1.使用dos2unix命令。一般的分发版本中都带有这个小工具(如果没有可以根据下面的连接去下载),使用起来很方便:
$ dos2unix myfile.txt
上面的命令会去掉行尾的^M。
2.使用vi的替换功能。启动vi,进入命令模式,输入以下命令:
:%s/^M$//g # 去掉行尾的^M。
:%s/^M//g # 去掉所有的^M。
:%s/^M/[ctrl-v]+[enter]/g # 将^M替换成回车。(我是用这个方法调好的)
:%s/^M/\r/g # 将^M替换成回车。
3.使用sed命令。和vi的用法相似:
$ sed -e ‘s/^M/\n/g’ myfile.txt
注意:这里的“^M”要使用“CTRL-V CTRL-M”生成,而不是直接键入“^M”。
相关文章推荐
- vim替换linux文件中的^M
- Linux使用vim进行多文件查找和替换的方法
- linux下使用vim编辑文件,出现^M是什么意思?
- 今天在Mac机器上使用了Flex Builder编辑了一个源代码文件,保存后使用vim命令去打开时发现系统自动在每一行的结尾添加了^M符号,其实^M在Linux/Unix中是非常常见的,也就是我们在Win中见过的/r回车符号。由于编辑软件的编码问题,某些IDE的编辑器在编辑完文件之后会自动加上这个^M符号。看起来对我们的源代码没有任何影响,其实并不然,当我们把源代码文件Check In到svn之类
- 【转】使用SecureCRT对Linux vim进行颜色设置【可用的.vimrc文件内容】
- 关于vim的一些使用以及Dos文件到Linux、Mac下问题
- 一、工具的使用 1、学会使用vim/emacs,vim/emacs是linux下最常用的源码编辑具,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。新手的话推荐使用vim,这也是我目
- 关于linux中使用vim打开文件出现^M的解决方法
- 在Linux下使用vim配合xxd查看并编辑二进制文件
- 在Linux下使用vim配合xxd查看并编辑二进制文件
- 在Linux下使用vim配合xxd查看并编辑二进制文件
- vim 文件在linux不换行,只显示^M解决办法
- 关于linux中使用vim打开文件出现^M的解决方法
- 在Linux下使用vim配合xxd查看并编辑二进制文件
- linux下 使用vim方式来使得 文件去掉最后一个 |的方法
- 在Linux下使用vim配合xxd查看并编辑二进制文件
- [Linux] Vim 中使用自定义模板来创建文件
- LINUX中使用VIM替换报错:pattern not found
- LINUX中使用VIM替换报错:pattern not found
- Linux vi/vim替换命令的使用说明[转]