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 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值