如何让 Guake 使用我的 Zsh 命令历史记录?

如何让 Guake 使用我的 Zsh 命令历史记录?

我经常使用 Guake(GNOME 的下拉终端)。问题是它似乎存储了自己的命令历史记录,并且与标准 GNOME 终端的命令历史记录不同。我的 shell 是zsh,它配置为将其命令历史记录存储在 中~/.zsh_history。我如何Guake使用存储在 中的命令历史记录~/.zsh_history

答案1

Guake是一个终端仿真器。因此,它不会在任何地方存储命令历史记录(它甚至不知道命令历史记录是什么)。它会启动您的 shell,然后 shell 会完成其余的工作。

可能是出于某种原因,Guake启动了不同的 shell,例如,bash而不是您首选的zsh。 也可能是它zsh以一些不同的设置启动,例如,不同的设置argv[0]导致zsh不同的行为(例如,bash如果您以 启动它,则行为会有所不同sh;不确定是否zsh也有类似情况)。

另一种解释可能是,当Guake隐藏窗口时,它不会终止内部运行的 shell,而是zsh继续在那里运行,并在您Guake再次调用时再次显示给您。也就是说,它zsh不会在中间写入历史记录,也不会读取其他zsh实例在那里写入的内容(就像它是一个“常规”终端仿真器,您将其窗口最小化但并未关闭)。

答案2

在终端中输入“guake”。启动 Guake 后,右键单击并单击首选项,然后单击定位 shell 选项卡。在 shell 选项卡上,选择 /usr/bin/zsh。这会将您的默认 shell 设置为 zsh,随后将您的代码存储到 zshrc_history。希望这对您有所帮助!

相关内容