从另一个 shell 实例获取 bash 历史记录

从另一个 shell 实例获取 bash 历史记录

可能重复:
bash 中历史文件可以统一吗?

我在 ssh 会话中运行 bash,将此会话称为会话 A。

我离开办公室,回家,通过 ssh 连接到同一个机器,将此称为会话 B。

从会话 B,我希望能够查看会话 A 的历史记录。

这可能吗?

答案1

有两个问题:

  • 将命令附加到历史记录而不是覆盖它。这可以通过将其添加到 .bashrc 来实现

    shopt -s histappend

  • 在每个命令之后重新读取历史记录。可以使用以下方法完成此操作:

    PROMPT_COMMAND="历史-a;历史-n"

它并不总是像乍一看那么好。反向搜索效果很好(control-r),但如果您只使用上一个命令的“up”(它将是任何控制台中给出的最后一个命令),这可能会令人沮丧。

也许有办法调整这一点...但我认为这对你来说是一个好的开始。

编辑:刚刚看到关于重复的评论......解决方案似乎完全相同。

相关内容