保存当前的shell历史记录并在之后恢复它

cnl*_*zon 2 bash shell

有时我在bash shell中使用一组命令非常密集地工作,然后我花了几天时间在一个非常不同的工作.问题是,当我想继续执行第一组任务时,shell历史记录已经被最后一个完全覆盖了,我花了一些时间搞清楚我在做什么(我缺乏长期记忆).

我通常会保留一个日记,所以我可以回去继续我最后一次停止的地方,但我想知道是否有一种简单的方法可以通过保存最近的shell历史(例如,最后100个命令)到文件并使用此文件覆盖将来的历史记录.

cnl*_*zon 5

因此该history命令实际上具有读/写文件的选项.您可以使用编写历史文件,history -w my_history.txt然后通过键入导入历史文件history -r my_history.txt.

注意:只需将history命令结果写入文件history > my_history.txt然后导入它就要小心,因为这样也会将命令编号写入历史记录.