美文网首页Vim学习程序员
在vim中执行shell命令

在vim中执行shell命令

作者: 沈祥佑 | 来源:发表于2019-03-22 19:16 被阅读25次

在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敲命令的区域 

5.

特殊的可以下面这么用

: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行的内容,注意其中的区别。

相关文章

  • vim学习 09——shell命令

    vim学习 09——shell命令 执行 shell 命令 :!shell命令 : 可以执行 shell 命令。 ...

  • 在vim中执行shell命令

    在vim中执行shell命令,有以下几种形式 1. 例如 2. 例如 3. 例如 4. 例如 5. 特殊的可以下面...

  • 如何在linux上创建定时任务

    首先添加需要任务执行的shell脚本: vim market.sh (新建或修改一个shell命令,文件所在位置为...

  • java远程执行shell命令失败

    需要通过java远程登录linux系统执行shell命令,执行的shell命令是 这条命令在linux下执行完全没...

  • shelljs前端自动化

    场景 在开发过程中,常会遇到如下命令: Shelljs 这个库能够让我们在js文件中执行shell命令。shell...

  • HBase数据操作

    1、 HBase shell操作 在命令行中执行hbase shell就进入了hbase shell操作模式,可以...

  • 实验六【2021OS】

    实验六:Linux Shell及vi/vim使用 vi/vim简单使用,在命令模式下的保存,删除,查找命令。She...

  • linux常用命令

    统计 在shell中执行sql 执行sql 并将结果写入文件 将shell脚本加入后台执行如将上述命令写入sql....

  • Python脚本中执行shell命令

    在python脚本中执行shell命令,使用os.popen方法 直接执行命令后,返回执行命令后的输出。 非常方便!

  • 在Python中执行shell命令

    转载自 https://janakiev.com/blog/python-shell-commands/[http...

网友评论

    本文标题:在vim中执行shell命令

    本文链接:https://www.haomeiwen.com/subject/zozrvqtx.html