Bash和Ksh中查找和执行历史命令 30 October 2013
在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执行
#ctrl + R 可以反向搜索包含特定字符串的历史命令,重复输入可以继续向前搜索
#ESC + . 可以自动输入上一条命令的最后一个参数,按.可继续往上翻
#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
替换等操作。
blog comments powered by Disqus