有没有办法让 vi 在文件中运行编辑命令?

Joe*_*ith 5 vi vim

假设我有一个带有一些编辑命令的文件“edit_commands”,例如:

:1,$s/good/better/g
:1,$s/bad/worse/g
Run Code Online (Sandbox Code Playgroud)

有没有办法让 vi 加载并运行“edit_commands”中的命令?

更新:看来“-S”选项可用于此目的。请参阅: 如何从命令提示符运行一系列 vim 命令

mat*_*ttb 4

似乎您想要使用像 sed 这样的程序来完成这样的任务,它与 vi (即“ed”编辑器)共享一个共同的祖先:

sed -i 's/good/better/g; s/bad/worse/g' your_file
Run Code Online (Sandbox Code Playgroud)

请参阅这个很棒的sed 教程

您需要使用 vi 来执行此操作是否有原因?如果您需要更高级的正则表达式功能,您可以使用 perl。

  • @JoeSmith如果您需要高级正则表达式功能,您可以使用perl(但我不太了解它,无法给出基于perl的答案) (2认同)