VIM中执行Shell命令(炫酷)

      我对VIM的认识仅仅是一款源码编辑器,在Linux下用来编辑程序源码或者某些服务的配置文件。最近无意中看到vim中竟然可以执行shell命令。第一次见,说句实话感觉好炫酷!不多说,我查了一些资料,一个一个尝试一下,留个笔记,备查。

      vim中执行shell命令,有以下几种形式:

      第一种 :!command

      不退出vim,并执行shell命令command,将命令输出显示在vim的命令区域,不会改变当前编辑的文件的内容。执行:!ls -al命令,如下图所示:

vim1

      特别的可以运行:!bash来启动一个bash shell并执行命令,不需要退出vim。这点在Linux渗透测试的时候很有用,关于日志清除相关的内容,不想说的太明白,自己体会吧。(最后还要删除VIM所产生的日志文件噢,kali里面是.viminfo,在vim中使用rm -rf强制清除)

      第二种 :r !command

      将shell命令command的结果插入到当前行的下一行。例如:r !date。读取系统时间并插入到当前行的下一行。如下图所示:

vim2

      第三种 :起始行号,结束行号!command

      将起始行号和结束行号指定的范围内的内容让shell命令command处理,并将处理结果替换起始行号和结束行号指定范围中的内容。例如 :1,4 !sort,将第1行到第4行的内容进行排序。如下图所示:

vim3

      可以只指定起始行,例如:1 !tr [a-z] [A-Z],将第1行的小写字母转为大写字母。如下图所示:

vim4

      除可以指定行号外,也可以用.表示当前光标所在行。例如:. !tr [a-z] [A-Z],将当前行的小写转为大写。如下图所示:

vim5

      第四种 :起始行号,结束行号 w !command

      将起始行号和结束行号所指定范围的内容作为命令command的输入,不会改变当前编辑的文件的内容。

      例如:1,4 w !sort,将第1行到第4行的内容进行排序,但排序的结果并不会直接输出到当前编辑的文件中,而是显示到vim敲命令的区域。如下图所示:

vim6

      特殊的可以用下面的命令: 1 w !bash,将会把第1行的内容作为bash命令来执行并显示结果,而且不会改变当前编辑的文件的内容。同样的 : . w !bash将当前行的内容作为bash命令来执行。

      好了,参考人家的资料,试了一下,整理的内容。这个好炫酷。

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值