分类: LINUX
2011-05-14 16:29:39
chenliangmoran2014-08-04 10:56:19
有时候,我们在 Linux 中打开曾在 Win 中编辑过的文件时,会在行尾看到 ^M 字符。虽然,这并不影响什么,但心里面还是有点不痛快。如果想要删除这些 ^M 字符,可以使用 Vim 来轻松搞定它。
在 Vim 的命令模式中输入 :%s/^M$//g 后,回车即会自动删除该文件中的所有 ^M 字符。
那么,这句命令到底是什么意思呢?% 指匹配整个文件,s 是置换的意思,^M 注意要用 Ctrl + V Ctrl + M 来输入,M 后面的 $ 代表匹配行尾的内容,最后的 g 则表示每行中匹配到的内容都要置换。
理解了命令的含义,就好变通使用了,比如说,要将某个文件中的 Vim 全部替换成 VIM,则可以使用这样的命令::%s/Vim/VIM/g。
chenliangmoran2012-05-07 11:44:23
lbenglish20002012-05-07 08:56:12
认真研究了下替换命令,格式如下
:[range]s/from/to/[flags]
range是替换范围,点(.)表示当前行,$表示最后一行,%表示整个文件;
例如 :1,5s/form/to/ 表示替换1行到5行;:.,$s/form/to/ 表示替换当前行到最后一行
flag是替换的一些标志,有p,c等,c表示替换前请求用户确认,p表示列印