前段时间碰到一个问题
在内存文件系统中,当次启动的命令历史列表可以通过history命令查看,系统reboot之后就无法查询上次的命令历史列表。
HISTFILE变量定义了命令历史列表保存在哪个文件中。查看HISTFILE变量定义为$HOME/.bash_history文件中,但是家目录下没有该文件。
于是清楚了reboot之后为什么history查询不到上一次命令历史列表的原因:因为没有$HOME/.bash_history这个文件啦。
但是还有以下问题:
为什么当次启动的命令历史列表可以通过history命令查询呢?
后来终于搞清楚原因:
history命令是bash内置命令,所有的命令历史在当前bash还存在的时候是保存在内存中的,只有在bash退出时才会从内存中flush到$HISTFILE变量指定的文件中,这也就是为什么当次的命令历史列表在当前bash中能够通过history命令查询,但是reboot之后却无法查询的原因。
阅读(2720) | 评论(0) | 转发(0) |