
我有 MacOSX,但這應該是 *NIX 通用的。
在我工作的電腦中,即使我剛剛打開一個新終端,我的 bash shell 也會記住先前會話的歷史記錄。
在我家裡的電腦上,這種情況不會發生。
我在兩台機器上都有相同的作業系統,而且 .bash_profile 中沒有任何與歷史記錄相關的設定。
我如何在我的家用電腦上進行設置,以便它記住跨會話的歷史記錄?
答案1
請確保您在家中運行 bash。這可以透過以下方式完成
echo $SHELL
或者
echo $0
或者
ps -p $$
方法一的輸出應該類似
/bin/bash
方法2應該輸出應該是
-bash
方法3應該輸出一些包含BASH的進程。
如果您確實運行 bash,您的主資料夾下應該有一個 .bash_history 檔案。如果您沒有收到歷史記錄,您的使用者帳戶可能無法正確設定。
一些需要考慮的環境選擇
HISTIGNORE HISTSIZE HISTFILE
要檢查這些設置,請使用:
echo $HISTSIZE
echo $HISTIGNORE
若要更新使用:
export HISTSIZE=9000
如果您不使用 BASH 作為 shell,您可以透過以下方式修改您的帳戶(如果您有權限):
usermod -s /bin/bash <username>