linux-快捷执行历史命令

众所周知,当你在一台服务器上不记得或者不知道以前执行过什么命令时,可以使用hsitory或者history [num],来查看历史记录。默认会显示历史上执行过的命令的序号和具体命令。

root@test:~/test# history 5
  434  kubectl get pod -A
  435  kubectl get pod -A | grep -v kube-system | wc-l
  436  kubectl get pod -A | grep -v kube-system | wc -l
  437  history
  438  history 5

当我们不知道本文要介绍的快捷键时,往往是用鼠标找到我们要用的命令,然后复制粘贴。如果想偷懒怎么办?有没有快捷键可以快速执行之前执行过的命令?

(1)!num ,执行序号为num的命令。

root@test:~/test# history 2
  439  ls -al
  440  history 2
root@test:~/test# !439
ls -al
total 20
drwxr-xr-x 1 root root 4096 Nov 11 10:33 .
drwx------ 1 root root 4096 Nov 11 10:33 ..

(2)!! ,执行上一条命令(除非你非常确信上一条命令没什么影响,否则存在风险

root@test:~/test# !!
ls -al
total 20
drwxr-xr-x 1 root root 4096 Nov 11 10:33 .
drwx------ 1 root root 4096 Nov 11 10:33 ..

(3)!?xxx?,该命令用于从下向上搜多history中的记录,会执行匹配到xxx的最近的一条命令。(除非你非常确信搜索到的命令没什么影响,否则存在风险

root@test:~/test# !?ls?
ls -al
total 20
drwxr-xr-x 1 root root 4096 Nov 11 10:33 .
drwx------ 1 root root 4096 Nov 11 10:33 ..

(4)ctrl + r(本人使用比较多)

命令行状态下使用ctrl + r后,输入想要搜索的命令,则可开始按history倒叙搜索执行过的命令。

  • 匹配到第一条命令后,如果要继续查下一个则再按ctrl + r。
  • 按回车键则执行查到的命令。
  • 按方向键,则保留查到的命令,并回到命令行模式。可以修改命令后执行。
  • ctrl + c 结束搜索
root@NJXDGD07607:~#
(reverse-i-search)`ls': ls -al

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值