jvr*_*sem 3 bash shell scripting history .bash-profile
该.bash_history文件是我们许多人的生命保存.不幸的是,BASH似乎只在该会话关闭(通过exit)时保存会话的命令.
这是一个悲剧,然后,当一个重要会话的所有命令在一个会话意外关闭时被蒸发 - 在它使用花哨的语法归档所有命令之前需要数小时才能正确...
当我忘记在离开工作时忘记关闭SSH连接,并且由于不活动(Write failed: broken pipe)而导致断开连接,或者当我重新启动计算机而没有手动关闭终端时,这种情况发生在我身上,等等.
我希望在一段时间之后将我的BASH命令存档 - 比如说每10分钟 - 这样如果我关闭一个会话,我的命令仍然会存在.这似乎是很多人可能觉得有用的东西.
有没有人知道如何做到这一点?
理想的情况下....
~/.bashrcbash或其他"黑客"StackOverflow- ers - 认为自己受到挑战!
小智 6
您可以使用history带-a选项的命令:
history
-a Append the ``new'' history lines (history lines entered since the
beginning of the current bash session) to the history file.
Run Code Online (Sandbox Code Playgroud)
您可以在PROMPT_COMMAND函数的帮助下立即将每个命令写入历史文件:
PROMPT_COMMAND
If set, the value is executed as a command prior to issuing each primary prompt.
Run Code Online (Sandbox Code Playgroud)
所以把它放到.bashrc中
PROMPT_COMMAND="history -a"
Run Code Online (Sandbox Code Playgroud)