Bash和Ksh中查找和执行历史命令

来源:互联网 发布:托管淘宝 编辑:程序博客网 时间:2024/05/19 13:17





原作者:夜惊心 链接:http://yejinxin.github.io/history-commands-in-bash-and-ksh


在Linux的Bash环境中,可以比较方便的搜索和执行最近输入过的命令,其实,在Unix的Ksh环境中,也可以做到,不过方法有所不同。总结这两种shell环境下相关的历史命令操作如下:

#Bash 
history #显示历史命令
history 10 #显示最近的10条历史命令
!! #显示并执行上一条历史命令
!27 #显示并执行第27条历史命令
!-2 #显示并执行倒数第2条历史命令
!ps #显示并执行上一条以ps开头的命令
!ps:p #显示上一条以ps开头的命令
!?pass #显示并执行上一条包含pass的命令
^zero^null #替换上一条命令的zero为null执行

             <span class="c">#ctrl + R 可以反向搜索包含特定字符串的历史命令,重复输入可以继续向前搜索</span>             <span class="c">#ESC + .  可以自动输入上一条命令的最后一个参数,按.可继续往上翻</span></code></pre></figure>

#Ksh 
history #显示历史命令
history 1000 1050 #显示第1000到1050条的历史命令
history 1000 #显示第1000以后的历史命令
history -50 #显示最近的50条历史命令
r #显示并执行上一条历史命令
r 27 #显示并执行第27条历史命令
r ps #显示并执行上一条以ps开头的命令

另外,在Ksh中,按ESC+\同样可以补全文件名。而按ESC+K则可以显示上一条命令,这时候,可以继续按K或J前后翻滚历史命令,甚至可以使用类似vi里的一些命令如x删除、r替换等操作。

本文出自夜惊心的博客,转载请保留出处

原创粉丝点击