Bash
為什麼找不到命令後延遲很長時間?
通常,當我錯誤輸入諸如 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=true
在SoftwareSourceSearch=false
延遲幾乎為 0,您仍然會收到有關拼寫錯誤的警告,這可能很有用。