有沒有辦法在 shell 之間共用 bash 時建立歷史記錄?

有沒有辦法在 shell 之間共用 bash 時建立歷史記錄?

我看過這個答案:

在多個終端機視窗中保留 bash 歷史記錄

這適用於歷史,但我想知道是否有辦法擴展此功能,以便按“向上”也可以共享?

答案1

雖然bash沒有這種確切的行為,但zsh可以這樣做

setopt inc_append_history share_history

如何在 zsh 中的終端之間共用歷史記錄?

答案2

透過告訴 bash 在每個命令後寫出並重新讀取歷史記錄應該是可能的。未經測試:

PROMPT_COMMAND="$PROMPT_COMMAND"$'\nhistory -a; history -n'

共享歷史記錄是 ksh 的預設行為。在 zsh 中,您可以透過開啟share_history選項,並且您可以透過調整其他選項來更好地控制歷史記錄的保存和合併方式歷史選項

相關內容