如何让 bash 记住以前会话的历史记录?

如何让 bash 记住以前会话的历史记录?

我有 MacOSX,但这应该是 *NIX 通用的。
在我工作的电脑上,我的 bash shell 会记住以前会话的历史记录,即使我刚刚打开了一个新终端。
在我家里的电脑上,这种情况不会发生。
两台机器的操作系统相同,我在 .bash_profile 中没有任何与历史记录相关的设置。
我如何在家用电脑上进行设置,以便它记住会话之间的历史记录?

答案1

请确保你正在家中运行 bash。可以使用以下命令完成此操作

echo $SHELL 

或者

echo $0

或者

ps -p $$

方法一的输出应该是这样的

/bin/bash

方法 2 应该输出

-bash

方法 3 应该输出其中包含一些 BASH 的进程。

如果您确实在运行 bash,则您的主文件夹下应该有一个 .bash_history 文件。如果您没有收到历史记录,则您的用户帐户可能未正确设置。

需要考虑的一些环境选择

HISTIGGNORE HISTIZE HISTFILE 忽略历史大小

要检查这些设置,请使用:

echo $HISTSIZE
echo $HISTIGNORE

要更新使用:

export HISTSIZE=9000

如果你没有使用 BASH 作为你的 shell,你可以通过以下方式修改你的帐户(如果你有权限):

usermod -s /bin/bash <username>

相关内容