在vim中如何执行命令?

7
我想在Vim编辑器内运行shell脚本。 我听说这是可能的,但不知道怎么做。 命令:./shell.shvim内部运行。
2个回答

10

有多种方法可以做到这一点。一个主要问题是“你是否希望从脚本中得到输出?”

  1. 如果你想把输出写入文件中:

:r!./shell.sh
  • 如果您不想将输出写入文件:

    :!./shell.sh
    
  • 如果您的文件中有./shell.sh这一行,您可以使用以下命令将其输出附加到文件中:

  •  !!sh
    
  • 如果你以前做过这件事,你就有更多的选择。

  • 如果你将命令保存在一个命名缓冲区中,你仍然有更多的选择。

  • 如果你想让脚本将文件的一部分(编辑缓冲区)作为标准输入,你可以使用这些机制中的任意一个来结合使用,并且有大量的选项可供选择。


  • 4

    在命令前加上!。例如,打开Vim并写入:

    :!ls
    

    这将执行shell命令ls

    需要注意的是,在Vim中使用此命令需要在正确的目录中。


    但是嘿,如果你不在正确的目录中,只需使用:cd或者:!ls path/to/desired/dest进行更改。你可能还想提到:r!<command>,它可以让你将命令输出到当前缓冲区。 - kojiro

    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接