如何在 zsh 中自定义命令未找到样式

How to customize command not found style in zsh

如何在 zsh (MacOS)

中自定义 command not found

例如:

MacBook-Pro: ~ justin$ lll
zsh: command not found: lll

MacBook-Pro: ~ justin$ lll
zsh: WTFFFFF command not found: lll

在 bash 中有关于此案例的 讨论,但我在 ~/zshrc/private/etc/zshrc 中找不到类似 command-not-found 的内容,和 /private/etc/zprofile

zsh 在 zshrc 文件中寻找函数 command_not_found_handler(而不是 bash 的 command_not_found_handle)。

在您的 ~/.zshrc 文件中添加如下内容:

command_not_found_handler() {
    echo "zsh: WTFFFFF command not found: $@"
    return 127
}

或进一步自定义。请注意 return 127 行:默认命令未找到处理函数 returns 退出代码 127,因此您可以保持此行为。您可以使用 echo $?.

测试退出代码