我想在大约20个* .C和* .H文件的vim中执行替换,我想一次打开它们。所有文件都分布在多个嵌套目录中,并且该命令在顶级父目录中执行。我可以仅使用vim来执行此操作,还是需要此答案中所示的“ find”命令和“ -p”选项?
在项目的根目录启动Vim:
$ vim /path/to/project
Run Code Online (Sandbox Code Playgroud)递归将相关文件添加到arglist中:
:argadd **/*.C **/*.H
Run Code Online (Sandbox Code Playgroud)
请参阅:h starstar和:h :argadd。
对arglist中的每个文件执行替换:
:argdo s/foo/bar/gc
Run Code Online (Sandbox Code Playgroud)
请参阅:h argdo和:h s_flags。