代码改变世界

查询历史使用过的命令并使用(history)

2017-06-03 10:15  tlnshuju  阅读(1149)  评论(0编辑  收藏  举报

一、什么是history

bash功能中。它能记忆使用过的命令,这个功能最大的优点就是能够查询以前做过的举动。从而能够知道你的执行步骤。那么就能够追踪你曾下达过的命令。以作为除错的工具。

二、History的保存

那么命令记录在哪里呢?在家文件夹内的 .bash_history 里! 只是。须要留意的是。~/.bash_history 记录的是前一次登陆曾经所执行过的命令。 而至于这一次登陆所执行的命令都被缓存在内存中。当你成功的注销系统后。该命令记忆才会记录到 .bash_history 其中!

三、调用历史命令

从上面我们已经知道了history的优点,那我们接下来学习一下它的使用方法吧。

history [n]

[root@instructor Desktop]#history [-c]

[root@instructor Desktop]#history [-raw] histfiles

选项与參数:

n   :数字,意思是要列出近期的 条命令行表的意思!

-c  :将眼下的 shell 中的所有 history 内容所有消除

-a  :将眼下新增的 history 命令新增入 histfiles 中,若没有加 histfiles 

      则默认写入 ~/.bash_history

-r  :将 histfiles 的内容读到眼下这个 shell 的 history 记忆中;

-w  :将眼下的 history 记忆内容写入 histfiles 中。

范例一:列出眼下内存内的全部 history 记忆

[root@instructor Desktop]#history

前面省略

 1017  man bash

 1018  ll

 1019  history 

 1020  history

列出的信息其中。共分两栏,第一栏为该命令在这个 shell 其中的代码。 还有一个则是命令本身的内容!至于会显示多少条命令记录,则与 HISTSIZE 有关!

范例二:列出眼下近期的 条数据

[root@instructor Desktop]#history 3

 1019  history 

 1020  history

 1021  history 3

范例三:立马将眼下的数据写入 histfile 其中

[root@instructor Desktop]#history -w

在默认的情况下。会将历史纪录写入 ~/.bash_history 其中!

[root@instructor Desktop]#echo $HISTSIZE

1000

四、历史使用的窍门

1、!

的使用

⑴。。反复前一个命令

⑵!

字符 反复前一个以“字符”开头的命令

⑶!num 依照history命令输出中的序号来反复相应命令

⑷。?abc 反复前一个包括abc的命令

⑸!

-n 反复n个命令之前的那个命令

2、按键组合

⑴使用updown键来上下浏览之前运行的命令

⑵键入ctr+r来在命令历史中搜索命令

[root@instructor Desktop]# 

(reverse-i-search)`': 

(reverse-i-search)`h': cat /etc/shadow

按回车键运行该命令

⑶要又一次调用前一个命令中的參数

Esc + .(点击Esc键,然后点击.键)

注意:

History保存在每一个用户自己的历史记录中,位于用户的家文件夹中。用户登录后,运行命令存放在内存中。仅仅有登录后才干看到。

五、怎样保证每次推出登录时情况history

在须要的用户主文件夹下,编辑~/.bash.logout加入一句history -c保存退出就能够了。