当我不小心输入了 reboot -f 时,如何恢复 bash 历史记录

Blu*_*303 0 linux bash history centos7

设想 :

在我的 Linux 服务器 [CentOS 7] 上工作后,我reboot -f在我的终端中输入, 重新启动后是否可以检索我的bash 历史记录

我知道这reboot -f会强制重启机器。这类似于按下 CPU 的电源按钮。不发生关机。系统将立即重置。

根据手册页:

当使用 --force 或运行级别 0 或 6 调用时,此工具会调用 reboot(2) 系统调用本身(传递 REBOOTCOMMAND 参数)并直接重新启动系统。否则,这只是使用适当的参数调用 shutdown(8) 工具而不传递 REBOOTCOMMAND 参数。

现在我的问题是:是否可以在之后检索 bash 历史记录reboot -f

HBr*_*ijn 6

不,据我所知,bash 不会在内存中维护历史记录,并且仅在 shell 退出时写入或附加新的历史记录项。

当您“按下电源按钮”(或运行shutdown -f)时,shell 显然不会正常退出,并且您会丢失该会话中的任何新历史记录,因为它只存在于内存中。来自其他会话的先前历史项目当然仍然存在,因为重新启动不会删除现有的历史文件。

许多终端模拟器保留一个回滚缓冲区,您可以从中恢复一些命令,而其他命令甚至可以配置为记录所有内容。