如何在Vim中将所有符合给定模式的文本移动到文件顶部?

3

I know

g/PATTERN/m $

将所有与匹配模式相符的文本移动到文件末尾。我该如何实现相反的操作?(即移到文件顶部)

1个回答

8

$ 替换为 0

:g/PATTERN/m0

如果您想按照文件中的顺序进行操作,请执行两次命令。

或者一次全部运行。由于无法将“g”链接到条形,因此需要使用execute。第二个g命令将使用与第一个相同的模式。

:exec 'g/PATTERN/m0' | g//m0

全局命令之后的命令是:move,它可以将当前行移动到提供的地址。其中0代表文件中的第一行,$代表最后一行。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接