Vim 提取/删除匹配行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
:1,10g/{pattern}/{cmd}

:g/{pattern}/d "删除匹配行
:v/{pattern}/d "保留匹配行


:g/{pattern}/m$ "移动匹配行
m0 第一行
m$ 最后一行

:sort
:g/^\(.*\)$\n\1$/d "去除重复行

:sort u "还有这种玩法,为什么不用这种玩法呢

:v/./.,/./-1join "压缩空行
:g/^$/,/./-j "压缩空行