如何在Vim中运行Unix命令?


76

在vim中时如何运行Unix命令?

Answers:


102

进入命令模式Esc,然后运行:!unix_command。任何从运行:提示起始砰的一声!将作为UNIX外壳命令运行。将显示输出,并允许您按下键以返回到vim中的工作。

如果您在可视模式下选择了文本,并希望以STDIN的形式将其发送到命令,请点击!!并输入命令。命令的结果将替换您选择的文本。


14
同样,!! 没有选择任何文本,您可以运行命令,然后将结果插入当前光标位置-无需将内容发送到STDIN并在不需要/不需要时将其替换。
Kromey 2011年

4
同样,如果您只是想将命令的输出放入文档中,只需执行:r!unix_command。这对于诸如date
Yab

2
您还可以通过外壳程序(或任何解释器)在vi缓冲区中执行多行,并用执行结果替换它们。例如::10,20!sh或,形成标记线,'a,'b!sh
jlliagre

1
我认为还有一点需要注意的是,这取决于您使用的操作系统。如果您使用的是Windows,它将执行Windows Shell命令。许多阅读此书的人已经知道这一点,但是对于来自Google的人来说,我认为这值得一提。
安德鲁

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.