Bash

為什麼找不到命令後延遲很長時間?

  • July 10, 2020

通常,當我錯誤輸入諸如 ls 之類的命令時(例如,我在輸入 ’s’ 之前按了 ENTER),在終端顯示後會有很長的(~2s)延遲:

bash: l: command not found...

我可以理解輸入錯誤密碼後出現類似延遲的原因,為什麼輸入錯誤密碼後延遲很大?. 但是為什麼在一個無法辨識的命令之後延遲呢?這也有影響FAIL_DELAY嗎?/etc/login.defs

經過一些研究,我發現了這一點

  • 嘗試解除安裝 command-not-found 軟體包,$>yum remove command-not-found然後再次安裝它>$yum install command-not-found(以防萬一您的系統上安裝了該軟體包)。

如果這無濟於事,請嘗試:

  • 將此添加到您的~/.bashrc文件中:

unset command_not_found_handle

我發現最好的解決方案,至少在 Fedora 上,是修改配置文件

/etc/PackageKit/CommandNotFound.conf

因為最大的延遲來自搜​​索要安裝的包,如果你 SoftwareSourceSearch=trueSoftwareSourceSearch=false

延遲幾乎為 0,您仍然會收到有關拼寫錯誤的警告,這可能很有用。

引用自:https://unix.stackexchange.com/questions/25681