解決 Linux Bash 中沒有此類檔案或目錄錯誤

Yahya Irmak 2023年1月30日
  1. 檢查路徑和直譯器以解決 Linux Bash 中的 bash: No such file or directory 錯誤
  2. 安裝庫包以解決 Linux Bash 中的 bash: No such file or directory 錯誤
  3. 使用 dos2unix 命令解決 Linux Bash 中的 bash: No such file or directory 錯誤
解決 Linux Bash 中沒有此類檔案或目錄錯誤

Linux 終端允許你執行程式。本文將解釋如何正確執行檔案並解決 Linux Bash 中的 bash: No such file or directory 錯誤。

在 Bash 中出現 bash: No such file or directory 錯誤的原因有很多。我們將解釋最常見的錯誤以及解決方法。

檢查路徑和直譯器以解決 Linux Bash 中的 bash: No such file or directory 錯誤

首先,確保使用正確的路徑執行程式。如果你在目錄或檔名上打錯字,你將收到此錯誤或提供錯誤的路徑。

如果你使用相對路徑(../../file)執行檔案,請嘗試使用絕對路徑(/path/to/file)執行。

你可能會收到此錯誤的另一個原因可能是你使用了錯誤的直譯器。程式碼中的第一行稱為 shebang (#!/bin/bash)。

它告訴作業系統使用哪個 shell 來解析檔案。如果未正確指定 shebang,你的程式將無法執行。

確保程式使用正確的直譯器。

安裝庫包以解決 Linux Bash 中的 bash: No such file or directory 錯誤

系統上缺少庫可能會導致你收到 bash: No such file or directory 錯誤。使用 file 命令檢查檔案。

file ./file

如果檔案是 32 位可執行檔案,則需要一些庫才能在 64 位架構作業系統上執行它。要在 Ubuntu 中解決此錯誤,請使用 dpkg 命令新增 i386 架構,然後安裝必要的庫。

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386

使用 dos2unix 命令解決 Linux Bash 中的 bash: No such file or directory 錯誤

Unix 作業系統使用換行符 ("\n") 作為行尾,但 Windows 作業系統使用回車和換行符 ("\r\n")。因此,如果你嘗試在 Linux 上執行用 Windows 編寫的程式碼,你可能會收到此錯誤。

你必須清除回車符才能執行檔案。

dos2unix 命令列工具是一個 DOS 到 Unix 文字檔案格式轉換器,反之亦然。你可以使用 dos2unix 工具使你的檔案與 Unix 相容。

它的用法如下。

dos2unix file.sh

該檔案將被轉換為 Unix 格式。你現在可以執行該檔案。

./file.sh

雖然我們在這裡解釋了最常見的錯誤和解決方案,但此錯誤可能有許多與程式碼相關的原因。你可以通過選擇適合你應用的解決方案來解決此問題。

作者: Yahya Irmak
Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

相關文章 - Bash Error