删除文件中的 ^M 字符
<script type="text/javascript"><!-- google_ad_client = "pub-9432205671574187"; //LT, 300x250 google_ad_slot = "9869120281"; google_ad_width = 300; google_ad_height = 250; //--></script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script><iframe name="google_ads_frame" src="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-9432205671574187&dt=1217578812998&lmt=1217566876&output=html&slotname=9869120281&correlator=1217578812998&url=http%3A%2F%2Flinuxtoy.org%2Farchives%2Fdelete_m.html&ref=http%3A%2F%2Fwww.google.com%2Fsearch%3Fhl%3Den%26newwindow%3D1%26client%3Dfirefox-a%26rls%3Dcom.ubuntu%253Aen-US%253Aofficial%26hs%3DLzp%26q%3D%25E5%2588%25A0%25E9%2599%25A4%255EM%26btnG%3DSearch&frm=0&cc=100&ga_vid=1477129393032682800.1217578813&ga_sid=1217578813&ga_hid=1901292427&flash=9.0.124&u_h=1024&u_w=1280&u_ah=976&u_aw=1280&u_cd=24&u_tz=480&u_his=1&u_java=true&u_nplug=5&u_nmime=29" marginwidth="0" marginheight="0" vspace="0" hspace="0" allowtransparency="true" frameborder="0" height="250" scrolling="no" width="300"></iframe>
版权声明: 可在遵循 CC 协议的前提下转载,但必须包含本声明及下列信息.
原载: LinuxTOY
作者: Toy
本文网址: http://linuxtoy.org/archives/delete_m.html
有时候,我们在 Linux 中打开曾在 Win 中编辑过的文件时,会在行尾看到 ^M 字符。虽然,这并不影响什么,但心里面还是有点不痛快。如果想要删除这些 ^M 字符,可以使用 Vim 来轻松搞定它。
在 Vim 的命令模式中输入 :%s/^M$//g
后,回车即会自动删除该文件中的所有 ^M 字符。
那么,这句命令到底是什么意思呢?% 指匹配整个文件,s 是置换的意思,^M 注意要用 Ctrl + V Ctrl + M 来输入,M 后面的 $ 代表匹配行尾的内容,最后的 g 则表示每行中匹配到的内容都要置换。
理解了命令的含义,就好变通使用了,比如说,要将某个文件中的 Vim 全部替换成 VIM,则可以使用这样的命令::%s/Vim/VIM/g
。
Thanks for your tip, very useful.
ubuntu 中有个pakcage叫做tofrodos,安装以后,里面有两个程序 --- dos2unix, unix2dos,dos2unix应该可以用来完成这篇文章里描述的转换。这两条命令(也有叫做fromdos, todos)应该在绝大部分unix,linux系统下都可以找到。
批量的话貌似可以这样:
find /path -name "*.后缀" | xargs dos2unix
@zeal, nomas:谢谢补充新的方法。
For bunk operations, you can:
1, apt-get install flip
2, dos to unix: flip -u
3, usage: man flip
Flip is so useful.
@Livid:又是一种好方法。谢谢。
PS.呵呵,达到了抛砖引玉的效果。
i often use this line to strip character ^M
%s//r//g
[...] LinuxTOY » 删除文件中的 ^M 字符 (tags: linux) [...]