如何让 zshell 跳过确认替换?

Nat*_*ong 9 bash zsh

如果我在 bash 中运行以下命令:

mkdir foo
cd !$
Run Code Online (Sandbox Code Playgroud)

第二个命令将被解释为cd foo并执行。

在 zshell 中(至少使用我当前的配置),它将进行替换,创建 command cd foo,并将我的光标留在它的末尾,以便我必须再次按 Enter 执行。

有没有办法让它只执行命令?

小智 10

来自man zshoptions

HIST_VERIFY

每当用户输入带有历史扩展的一行时,不要直接执行该行;相反,执行历史扩展并将该行重新加载到编辑缓冲区中。

所以只需添加setopt no_hist_verify到您的 .zshrc

编辑:删除破坏命令的意外单引号