从删除空行说起:
命令:
1 |
:g /^$/d |
这里面包含三部分:
1: g
2: /^$/
3: d
关于 :g 的使用参看:
1 |
:h global@cn |
global 用于重复执行一条命令, ‘d’ 就是delete,相当于选择模式匹配的部分,然后执行一个d命令,也可以是:
1 |
:g /^$/ d |
如下命令是怎么解释的呢:
1 |
:% s/^$//g |
‘s’ 是一个替换命令,后面是其参数,可以适当选择合适的分隔符,如把所有的 /data1 替换为 /data2:
1 |
:% s#/data1#/data2#g |
这里使用 ‘/’ 做分隔符显然不太合适,使用 # 就省得对 ‘/’ 做转义了