如何像/
命令一样搜索文件,但递归扫描子文件夹。或者可能还有其他方法如何获取与当前文件夹中的某些模式匹配的文件列表,包括所有子文件夹。
答案 0 :(得分:4)
有:fin[d]命令。在内部,它调用find
实用程序(可通过'findprg'选项进行配置),因此您可以执行find
能够执行的所有操作。也就是说,在大多数情况下,命令的简单形式就足够了:
:find *.sh
请注意,默认情况下,参数被视为常规文件模式(-name
的{{1}}选项),这与find
接受的正则表达式不同。要通过regexp进行搜索,请使用:
/
如果您只想扫描特定的子文件夹,只需在运行命令之前选择它们,搜索将仅限于这些目录。
:find -regex '.*_.*'
命令会显示一个包含搜索结果的菜单。如果您想像常规文件一样处理它们(例如删除,复制,移动),请点击 b 来更改列表表示。
:find
或者,您可以使用命令(例如%u)填充所有子目录中的文件列表的当前视图:
/
然后使用:!find%u
,虽然这可能效率较低。