如果我有一个包含shebang行的文件(例如#!/bin/bash)在Vim中打开,并且文件具有执行权限(即chmod +x)我知道我可以在不离开编辑器的情况下输入以下内容来执行它:
#!/bin/bash
chmod +x
:! %:p
:
!
%
:p
对于这种频繁的任务,有没有更短的捷径?例如,存在:wq的ZZ快捷方式等。
:wq
ZZ
wbrvyc0a1#
:!%:p
,没有空格,则更短。如果你想要一个更短的快捷方式,你可以创建一个自定义Map:
nnoremap <F9> :!%:p
或者更“助记符”:
nnoremap <leader>r :!%:p
qyyhg6bp2#
如果您还没有设置权限,则可以运行:
:! sh %
o3imoua43#
如果您的文件名/目录路径中有空格,前面的答案都不起作用。简单的解决办法。
:!"%:p"
4uqofj5v4#
在你执行了一次之后,一个短的:!!将重复它。
:!!
xwmevbvl5#
启动vi时,显式指定文件路径,如“vi ./blablabla”
vi ./yourscript.pl
然后从!%开始另一个变体是调用vi命令,如下所示
!%
!./%
mqxuamgl6#
您可以向.vimrc添加键Map
map <F5> :!%
xu3bshqb7#
为了在vim中执行当前文件,如果文件名中有空格
:!./"%"
7条答案
按热度按时间wbrvyc0a1#
,没有空格,则更短。
如果你想要一个更短的快捷方式,你可以创建一个自定义Map:
或者更“助记符”:
qyyhg6bp2#
如果您还没有设置权限,则可以运行:
o3imoua43#
如果您的文件名/目录路径中有空格,前面的答案都不起作用。简单的解决办法。
4uqofj5v4#
在你执行了一次之后,一个短的
:!!
将重复它。xwmevbvl5#
启动vi时,显式指定文件路径,如“vi ./blablabla”
然后从
!%
开始另一个变体是调用vi命令,如下所示
mqxuamgl6#
您可以向.vimrc添加键Map
xu3bshqb7#
为了在vim中执行当前文件,如果文件名中有空格