如何在vim中插入shell命令

 我来答
猪猪
2016-12-09 · 知道合伙人互联网行家
猪猪
知道合伙人互联网行家
采纳数:2606 获赞数:10117
站长之家专栏作者 美浩工作室创立者

向TA提问 私信TA
展开全部
vim中执行shell命令,有以下几种形式1):!command不退出vim,并执行shell命令command,将命令输出显示在vim的命令区域,不会改变当前编辑的文件的内容例如:!ls -l

特别的可以运行:!bash来启动一个bash shell并执行命令,不需要退出vim
2):r !command将shell命令command的结果插入到当前行的下一行例如:r !date,读取系统时间并插入到当前行的下一行。3):起始行号,结束行号 !command将起始行号和结束行号指定的范围中的内容输入到shell命令command处理,并将处理结果替换起始行号和结束行号指定的范围中的内容例如:62,72 !sort,将62行到72行的内容进行排序可以只指定起始行,例如:62 !tr [a-z] [A-Z],将62行的小写字母转为大写字母当前光标所在行,除可以指定行号外,也可以用.表示,例如:. !tr [a-z] [A-Z],将当前行的小写转为大写4):起始行号,结束行号 w !command将起始行号和结束行号所指定的范围的内容作为命令command的输入。不会改变当前编辑的文件的内容例如:62,72 w !sort,将62行到72行的内容进行排序,但排序的结果并不会直接输出到当前编辑的文件中,而是显示在vim敲命令的区域特殊的可以下面这么用:62 w !bash,将会把第62行的内容作为bash命令来执行并显示结果,而且不会改变当前编辑的文件的内容同样的:. w !bash,将当前行的内容作为bash命令来执行例如52行内容为ls -l那么输入:52 w !bash就跟执行!ls -l是一样的效果,如果你用的shell是bash shell
如果输入的是:52 !bash,那么会把第52行的内容也就是ls -l作为命令执行,同时命令的输出结果会替换第52行的内容,注意其中的区别。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式