如何将所有终端会话同步到一个历史文件?

如何将所有终端会话同步到一个历史文件?

当我打开终端会话 A,键入一些命令,然后键入“历史记录”时,我会看到我正在运行的命令,但是如果我打开另一个终端会话(B)并键入“历史记录”,则我看不到在会话 A 终端中键入的命令。

我如何将所有终端会话的历史记录同步到一个文件中,这样当我从一个终端会话键入“历史记录”时,我将看到所有会话中的命令?

答案1

添加

shopt -s histappendPROMPT_COMMAND='history -a'

到您的 .bashrc 文件应该会使您的终端附加而不是覆盖该.bash_history文件。

然后,历史命令可能会反映最后输入的内容,无论终端如何。

答案2

我找到了一些可以完美运行的东西,在 .bashrc 文件中添加了以下行。

导出 PROMPT_COMMAND="历史记录 -a;历史记录 -c;历史记录 -r;$PROMPT_COMMAND"

相关内容