0

我正在 Vim 中编辑一个 Python 文件,我有几行要提取:所有行匹配 pattern REGEX

我可以列出所有这些行:g/REGEX

如何使用上述命令返回的选择内容打开一个新缓冲区?

现在,我正在诉诸于退出编辑器并使用catgrep实际创建一个新文件......必须有一个集成的方式吗?

4

2 回答 2

3

试试这个:

$ vim file.txt

:e new.txt
:0r!grep REGEX #

最后一个命令调用 external grepwithREGEX和备用缓冲区名称#(与 相同file.txt),然后将结果读取到当前缓冲区(new.txt


也试试这个:

$ vim file.txt

:v/REGEX/d
:w new.txt
于 2013-03-04T00:37:05.543 回答
0

如果你对命令行 Vim 而不是 gVim 很感兴趣,我相信:

vim `grep REGEX file.txt` 

会做的伎俩。

于 2013-03-04T14:58:28.063 回答