如果我有一个在 Vim 中打开的带有 shebang 行的文件(例如#!/bin/bash
)并且该文件具有执行权限(即chmod +x
)我知道我可以在不离开编辑器的情况下键入它来执行它:
:! %:p
:
用于命令模式!
运行 shell 命令%
引用当前缓冲区中的文件:p
使用当前文件的完整路径
这个频繁的任务有没有更短的捷径?
例如,有一个ZZ
快捷方式:wq
,等等。
如果我有一个在 Vim 中打开的带有 shebang 行的文件(例如#!/bin/bash
)并且该文件具有执行权限(即chmod +x
)我知道我可以在不离开编辑器的情况下键入它来执行它:
:! %:p
:
用于命令模式!
运行 shell 命令%
引用当前缓冲区中的文件:p
使用当前文件的完整路径这个频繁的任务有没有更短的捷径?
例如,有一个ZZ
快捷方式:wq
,等等。
:!%:p
,没有空格,更短。
如果您想要更短的快捷方式,可以创建自定义映射:
nnoremap <F9> :!%:p
或更“助记符”:
nnoremap <leader>r :!%:p
如果您尚未设置权限,则可以运行:
:! sh %
如果您的文件名/目录路径中有空格,则前面的答案都不起作用。简单的修复。
:!"%:p"
在你执行了一次之后,短片:!!
将重复它。
启动 vi 时,明确指定文件路径,例如“vi ./blablabla”
vi ./yourscript.pl
然后开始!%
另一个变体是像这样调用 vi 命令
!./%
您可以将键映射添加到 .vimrc
map <F5> :!%