我正在編輯Vim中的Python文件,我有幾行提取:所有行匹配模式REGEX
。Vim:打開一個新的緩衝區,其中包含當前匹配模式的文件的所有行
我可以列出所有這些行:g/REGEX
。
如何用上面的命令返回的選擇內容打開一個新的緩衝區?
現在,我正在訴諸退出編輯器,並使用cat
和grep
實際創建一個新文件...必須有一個集成的方式?
我正在編輯Vim中的Python文件,我有幾行提取:所有行匹配模式REGEX
。Vim:打開一個新的緩衝區,其中包含當前匹配模式的文件的所有行
我可以列出所有這些行:g/REGEX
。
如何用上面的命令返回的選擇內容打開一個新的緩衝區?
現在,我正在訴諸退出編輯器,並使用cat
和grep
實際創建一個新文件...必須有一個集成的方式?
嘗試這一個:
$ vim file.txt
:e new.txt
:0r!grep REGEX #
最後的命令調用外部grep
與REGEX
和替代緩衝液名稱#
(如file.txt
相同),然後讀取結果至當前緩衝區(new.txt
)
也試試這個:
$ vim file.txt
:v/REGEX/d
:w new.txt
Upvoting,因爲我不知道':v'可以像':g!'一樣使用。 – Robottinosino 2013-03-05 22:47:52
如果你很酷命令行Vim的,而不是gVim的,我相信:
vim `grep REGEX file.txt`
會做的伎倆。
我不知道比這更快的方式:http://vim.wikia.com/wiki/VimTip1063 – 2013-03-03 23:12:42