通过Linux下的history命令我们可以查看用过的命令,即历史命令,今天本文将详细介绍Linux下history的具体用法,一起来了解下吧。
一、什么是history
在bash功能中,它能记忆使用过的命令,这个功能最大的好处就是可以查询曾经做过的举动!
从而可以知道你的运行步骤,那么就可以追踪你曾下达过的命令,以作为除错的工具!
二、History的保存
那么命令记录在哪里呢?在家目录内的.bash_history里!不过,需要留意的是,~/.bash_history记录的是前一次登陆以前所运行过的命令,而至于这一次登陆所运行的命令都被缓存在内存中,当你成功的注销系统后,该命令记忆才会记录到.bash_history当中!
三、调用历史命令
接下来学习history历史命令的用法。
代码如下:
history[n]
[root@jb51Desktop]#history[-c]
[root@jb51Desktop]#history[-raw]histfiles
选项与参数:
n:数字,意思是要列出最近的n条命令行表的意思!
-c:将目前的shell中的所有history内容全部消除
-a:将目前新增的history命令新增入histfiles中,若没有加histfiles,
则默认写入~/.bash_history
-r:将histfiles的内容读到目前这个shell的history记忆中;
-w:将目前的history记忆内容写入histfiles中!
例1,列出目前内存内的所有history历史记录
代码如下:
[root@jb51Desktop]#history
#前面省略
1017manbash
1018ll
1019history
1020history
列出的信息当中,共分两栏,第一栏为该命令在这个shell当中的代码,另一个则是命令本身的内容!至于会显示多少条命令记录,则与HISTSIZE有关!
例2,列出目前最近的3条数据
代码如下:
[root@jb51Desktop]#history3
1019history
1020history
1021history3
例3,立刻将目前的数据写入histfile当中
代码如下:
[root@jb51Desktop]#history-w
#在默认的情况下,会将历史纪录写入~/.bash_history当中!
[root@jb51Desktop]#echo$HISTSIZE
1000
四、历史使用的窍门
1、!的使用
⑴!!重复前一个命令
⑵!字符重复前一个以字符开头的命令
⑶!num按照history命令输出中的序号来重复对应命令
⑷!?abc重复前一个包含abc的命令
⑸!-n重复n个命令之前的那个命令
2、按键组合
⑴使用up和down键来上下浏览之前执行的命令
⑵键入ctr+r来在命令历史中搜索命令
代码如下:
[root@jb51Desktop]#
(reverse-i-search)`‘:
(reverse-i-search)`h’:cat/etc/shadow
按回车键执行该命令
⑶要重新调用前一个命令中的参数
Esc+。(点击Esc键,然后点击。键)
注意:
History保存在每个用户自己的历史记录中,位于用户的家目录中。
用户登录后,执行命令存放在内存中,只有登录后才能看到。
五、如何保证每次推出登录时情况history
在需要的用户主目录下,编辑~/.bash.logout添加一句history-c保存退出就可以了。
上面就是Linux下history命令的用法介绍了,本文只简单介绍了history命令的基本知识,其实history命令还有很多的使用方法,这里就不一一介绍了。