我有大约 30 个 yaml 文件用作配置,但文件中的属性仍在开发中。因此,有时必须添加新属性。
将相同的属性添加到所有不同的文件会很乏味,有没有快速的方法/工具?
有几种方法,但我最喜欢的是使用:cdo/ :cfdo。只需:grep/:vimgrep您的文件,然后使用:cdo.
:vimgrep /pattern/ *.yaml
:cdo s/foo/bar/|w
Run Code Online (Sandbox Code Playgroud)
命令 to:cdo不需要是替换,您可以使用任何 ex 命令(请参阅:h ex-cmd-index)。例如,用于:normal将每个匹配项的第一个字符大写:cdo norm ~。
请参阅以下Vimcasts集:
:cdo在 Vim 8 中可用。您也可以使用参数列表和:argdo.
:args *.yaml
:argdo s/foo/bar/|w
Run Code Online (Sandbox Code Playgroud)
相关 Vimcasts espidodes:
如需更多帮助,请参阅:
:h :cdo
:h :vimgrep
:h :s
:h quickfix
:h arglist
:h :argdo
:h :args
Run Code Online (Sandbox Code Playgroud)