Zsh
如何定義處理“找不到命令”的函式?
我想定義一個被呼叫的函式,每當 shell 使用者鍵入一個不存在的命令時。就我而言,我想記錄錯誤並嘗試替代命令。
目前,當輸入例如
dgfgsdjagfghsdg
錯誤時zsh: command not found: dgfgsdjagfghsdg
顯示。有沒有辦法定義一個函式,將輸入的命令(+參數)作為參數?
是的。
- 在 Z shell 中,它是一個名為
command_not_found_handler
.- 在 Bourne Again shell 中,它是一個名為
command_not_found_handle
.進一步閱讀
為了補充JdeBP 的答案,在fish shell中它被稱為
fish_command_not_found
.