vim是否可以打开目录及其所有子目录中的所有.C和.H文件?

tma*_*ric 4 vim

我想在大约20个* .C和* .H文件的vim中执行替换,我想一次打开它们。所有文件都分布在多个嵌套目录中,并且该命令在顶级父目录中执行。我可以仅使用vim来执行此操作,还是需要此答案中所示的“ find”命令和“ -p”选项?

rom*_*inl 5

  1. 在项目的根目录启动Vim:

    $ vim /path/to/project
    
    Run Code Online (Sandbox Code Playgroud)
  2. 递归将相关文件添加到arglist中:

    :argadd **/*.C **/*.H
    
    Run Code Online (Sandbox Code Playgroud)

    请参阅:h starstar:h :argadd

  3. 对arglist中的每个文件执行替换:

    :argdo s/foo/bar/gc
    
    Run Code Online (Sandbox Code Playgroud)

    请参阅:h argdo:h s_flags

  • `:set hidden`,然后用`:wall`保存,或附加`||。更新`:argdo`命令。 (3认同)