Vim Greplace语法

Vim Greplace语法,vim,replace,Vim,Replace,我想使用VIM更改几个文件中的一些单词。为了做到这一点,我发现了,这似乎就是为了做到这一点。但是,在中没有Greplace语法的示例(有一个Gsearch示例,但我需要replace函数) 假设我想将所有.asp文件中的“foo”改为“bar”,那么如何使用Greplace(或任何其他方法)实现这一点呢。我不在乎确认(如果需要确认就可以了,如果不需要也可以) 没有专用插件是很简单的 $ vim *.asp :bufdo %s/foo/bar/ge | update :q :bufdo在所有缓

我想使用VIM更改几个文件中的一些单词。为了做到这一点,我发现了,这似乎就是为了做到这一点。但是,在中没有Greplace语法的示例(有一个Gsearch示例,但我需要replace函数)


假设我想将所有.asp文件中的“foo”改为“bar”,那么如何使用Greplace(或任何其他方法)实现这一点呢。我不在乎确认(如果需要确认就可以了,如果不需要也可以)

没有专用插件是很简单的

$ vim *.asp
:bufdo %s/foo/bar/ge | update
:q
  • :bufdo
    在所有缓冲区上运行以下命令
  • %s/foo/bar/ge
    在所有行和每行中的所有引用中将foo替换为bar。
    e
    标志确保
    :s
    在未找到foo时不会发出错误,因为foo可能不存在于所有文件中
  • |
    是Vim分离多个要运行的命令的方法。请参见
    :帮助:条形码
  • update
    仅当实际进行了任何更改时,才会将文件保存回磁盘

光滑。但无法使用未打开的缓冲区。例如,“对目录@OrenMazor中的所有文件执行此操作”,当然,但在我的示例中没有任何未打开的缓冲区。我肯定在为我的用例大声思考:)