分页: 1 / 1

Shell命令技巧 - 双感叹号(事件引用符)

发表于 : 2012年 4月 13日 12:53 星期五
admin
以sudo运行前一条命令

代码: 全选

$ sudo !!
大家应该都知sudo,不解释。
但通常出现的情况是,敲完命令执行后报错才发现忘了sudo。
这时候,新手用户就会:按上箭头,按左箭头,盯着光标回到开始处,输入sudo,回车;
高手用户就蛋定多了,按Ctrl-p,按Ctrl-a,输入sudo,回车。

这里介绍这个是天外飞仙级别的,对,就直接sudo !!。
当然这几种解决方式效果是完全一样的。

两个感叹号其实是bash的一个特性,称为事件引用符(event designators)。

!!其实相当于!-1,引用前一条命令,当然也可以!-2,!-50。

默认情况下bash会在~/.bash_history文件内记录用户执行的最近500条命令,history命令可以显示这些命令。

关于事件引用符的更多用法可以深入阅读The Definitive Guide to Bash Command Line History