Linux

當我不小心輸入 reboot -f 時如何恢復 bash 歷史記錄

  • March 28, 2018

設想 :

在我的 Linux 伺服器上工作之後

$$ CentOS 7 $$,我輸入reboot -f了我的終端,是否可以在重新啟動後檢索我的bash 歷史記錄 ? 我知道這reboot -f將強制重啟機器。這類似於按下 CPU 的電源按鈕。不會發生關機。系統將立即重置。

根據手冊頁:

當使用 –force 或執行級別 0 或 6 呼叫時,此工具會呼叫 reboot(2) 系統呼叫本身(傳遞 REBOOTCOMMAND 參數)並直接重啟系統。否則,這只會使用適當的參數呼叫 shutdown(8) 工具,而無需傳遞 REBOOTCOMMAND 參數。

**現在我的問題是:**是否可以在之後檢索 bash 歷史記錄reboot -f

不,據我所知,bash 不會在記憶體中維護歷史記錄,並且僅在 shell 退出時寫入或附加新的歷史記錄項。

當您*“按下電源按鈕”*(或執行shutdown -f)時,shell 顯然不會正常退出,並且您會失去該會話的任何新歷史記錄,因為它只存在於記憶體中。當然,來自其他會話的先前歷史項目仍然存在,因為重新啟動不會刪除現有的歷史文件。

許多終端仿真器保留一個回滾緩衝區,您可以從中恢復一些命令,甚至可以將其他命令配置為記錄所有內容。

引用自:https://serverfault.com/questions/789134