如何在vim中搜索文件目录?

yzckvree  于 2023-06-30  发布在  其他
关注(0)|答案(3)|浏览(271)

我在vim中的一个常见编程任务是:

:s/some pattern/

做一些工作
n #查找下一个条目
做一些工作
n #查找下一个条目...
现在,s/....只在当前文件中搜索。
有没有一种方法可以做到这一点,但搜索整个 * 目录 * 的文件?对pwd的子目录中以 .hpp 或 *.cpp**结尾的所有文件执行“s/..../”?
谢谢!

mznpcxlj

mznpcxlj1#

你可以使用:grep命令:或者要更完整地集成搜索工具,请使用grep.vim extension
只需输入:help grep即可获得Vim开箱即用的详细文档。使用:grep foo *.?pp应该做你想做的。这将打开QuickFix列表,就像您使用:make获得的列表一样,可以跳转到找到的事件。

5fjcxozz

5fjcxozz2#

有一个很棒的插件名为ctrlsf.vim,它可以让你在vim中高效地搜索。
这是它的快照。很酷,不是吗?

例如,如果你想在当前目录中搜索像“hello”这样的词,安装后,你需要做的就是简单地输入:

:CtrlSF "hello"

你就会得到你想要的
玩得开心!

unhi4e5o

unhi4e5o3#

:help windo
:help bufdo
man find
man xargs

find ./start/point -iname "*.cpp" -print0 | xargs -0 vim
:bufdo s/baar/foo/gc
:wall
:qall

gc“全局确认”,wall(写入全部),qall(完全全部)。要查看文件列表:ls top跳转到下一个文件:wn(写入下一个)或:bn(缓冲区下一个)。顺便说一句,xargs管理内存中的大块文件,以无错误地交付给vim。

相关问题