本初學者教程展示瞭如何修復 Debian、Ubuntu 和其他 Linux 發行版上的 Bash: command not found 錯誤。
如果在 Linux 上使用該命令,則需要檢查輸出。但是,您可能會遇到終端顯示“找不到命令”錯誤的問題。
這個錯誤沒有簡單的單一解決方案。您將不得不自己解決問題。
老實說,這並不難。 如果顯示“bash: 找不到指令”。 shell(或 Linux 系統)找不到您輸入的命令。
找不到該命令的可能原因有三個。
- 這是一個錯字。命令名稱拼寫錯誤
- 該命令將不會安裝
- 該命令基本上是一個位置未知的可執行腳本。
讓我們仔細看看每個可能的根本原因。
修復了“bash:找不到命令”錯誤
方法一:仔細檢查命令名(不,認真)
人們會犯錯誤,尤其是在打字時。您輸入的命令可能存在拼寫錯誤(mispelling)。
需要特別注意。
- 正確的命令名稱
- 命令及其選項之間的空格
- 使用 1(編號 1)、I(大寫 i)、l(小寫 L)
- 使用大寫和小寫
請參見下面的示例。常用的 ls 命令拼寫錯誤。
因此,請注意您輸入的內容。
方法 2:確保該命令已安裝在您的系統上
這是未找到命令錯誤的另一個常見原因。如果未安裝,您將無法運行該命令。
Linux 發行版中默認安裝了許多命令,但並非所有命令行工具都預裝在您的系統上。如果您嘗試執行的命令不是常用命令,則需要先安裝它。
它可以使用發行版的包管理器安裝。
您可能需要安裝缺少的命令
在某些情況下,流行的命令將被中止,您甚至無法安裝它們。您需要找到另一個命令才能獲得結果。
請參閱 ifconfig 命令的示例。此不推薦使用的命令用於獲取 IP 地址和其他網絡接口信息。 網絡上的舊教程繼續提到使用此命令,但在較新的 Linux 版本中不再可用。 它已被 ip 工具取代。
隨著時間的推移,一些流行的命令將被棄用
系統甚至可能無法找到非常常見的命令。如果您在 Docker 容器中運行 Linux 發行版,通常會出現這種情況。 為了減小 OS 映像的大小,容器通常甚至不包含最常見的 Linux 命令。
這就是 Docker 用戶遇到這樣的事情的方式: Ping 命令未找到錯誤 等等
Docker 容器通常使用一些命令安裝
因此,解決方案是安裝缺少的命令或找到一個工具,該工具與您嘗試對缺少的命令執行相同的操作。
方法三:檢查腳本路徑是否正確
這是 Linux 初學者在運行 shell 腳本時的常見錯誤。
如果您在同一目錄中並嘗試僅使用該名稱運行可執行腳本,則會收到錯誤消息。
[email protected]:~/scripts# sample
-bash: sample: command not found
您必須明確指定 shell 解釋器或其絕對路徑。
如果您在不同的目錄中並嘗試在未指定文件的正確路徑的情況下運行 shell 腳本,您將收到找不到文件的消息。
添加到路徑
在某些情況下,將整個軟件下載到一個 tar 文件中,解壓它,然後找到可執行文件和其他程序文件。要運行程序,您需要運行可執行文件。
但是,這要求您位於同一目錄中或指定可執行文件的完整路徑。這讓我很煩。
您可以在此處使用 PATH 變量。此變量包含一組目錄,其中包含各種 Linux 命令的二進制(可執行)文件。運行命令時,Linux 系統會在 PATH 變量中列出的目錄中查找該命令的可執行文件。
您可以使用以下命令找到該命令的二進制位置: which
命令:
如果要從系統上的任何位置運行可執行文件或腳本,則需要將文件的位置添加到此 PATH 變量中。
接下來,您需要將 PATH 變量添加到 shell 的 rc 文件中,以便對 PATH 變量的更改是永久性的。
你可以在這裡得到重點。 Linux 系統知道可執行腳本的位置很重要。在運行時指定路徑或將其位置添加到 PATH 變量中。
對你有幫助嗎?
我知道第一次使用 Linux 時,事情可能會讓人不知所措。但是,隨著您了解問題的根本原因,您的知識將逐漸提高。
這裡沒有直接解決“找不到命令錯誤”的方法。這裡有一些提示和技巧可幫助您進行故障排除。
如果您仍有疑問或需要幫助,請在評論部分告訴我們。