VI 行处理技巧数枚

最近在公司需要处理一些脚本,才感觉自己的vi太次了,在这里搞个备份,以备查阅:

1. 如何只保留匹配内容行而删除其他行?

:v/pattern/d
:help :v

2. 如何对每行只保留匹配内容而删除这一行中的其它内容
:%s/^.*\(pattern\).*$/\1/g

3. 删除包含特定字符串的行
:g/pattern/d

4. 删除包含特定字符串的行,每次删除前都提示
:%s/^.*pattern.*\n//c

5. 处理字符串: /123/456/789/109/example.txt, 怎么删除到最后一个/,然后得到example.txt ?
0dte
解释:0       到行首
           dte   删到第一个e

6. 处理字符串: /123/456/789/ef/109/example.txt, 怎么删除到最后一个/,然后得到example.txt ?
$T/d0
解释:$     到行尾
          T/    从后往前搜到第一个/
          d0   删到行首

d/ex然后回车

解释:d     删除
           /ex  搜到第一个ex
7 删除不包含字符串‘dd’的行
:g!/^dd/d 
阅读更多
文章标签: 脚本
想对作者说点什么? 我来说一句

vi编辑器使用技巧总结

2011年04月30日 199KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭