How to Solve No Such File or Directory Error in Linux Bash
-
Check Path and Interpreter to Solve the
bash: No such file or directory
Error in Linux Bash -
Install Library Packages to Solve the
bash: No such file or directory
Error in Linux Bash -
Use the
dos2unix
Command to Solve thebash: No such file or directory
Error in Linux Bash
Linux terminal allows you to execute programs. This article will explain how to execute files properly and solve the bash: No such file or directory
error in Linux Bash.
There are many code-related reasons why you get a bash: No such file or directory
error in Bash. We will explain the most common mistakes and ways to fix them.
Check Path and Interpreter to Solve the bash: No such file or directory
Error in Linux Bash
First, make sure you execute the program with the correct path. If you make a typo on the directory or file name, you will get this error or give the wrong path.
If you are executing the file with a relative path (../../file
), try executing with the absolute path (/path/to/file
) instead.
Another reason you might get this error could be that you are using the wrong interpreter. The first line in the code is called shebang (#!/bin/bash
).
It tells the operating system which shell to use to parse the file. If the shebang is not specified correctly, your program will not run.
Make sure the program uses the proper interpreter.
Install Library Packages to Solve the bash: No such file or directory
Error in Linux Bash
Missing libraries on your system can cause you to get the bash: No such file or directory
error. Examine the file with the file
command.
file ./file
If the file is a 32-bit executable, you need some libraries to execute it on a 64-bit architecture OS. To solve this error in Ubuntu, add the i386
architecture with the dpkg
command, then install the necessary libraries.
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
Use the dos2unix
Command to Solve the bash: No such file or directory
Error in Linux Bash
Unix operating systems use line feed ("\n"
) as the end of the line, but Windows operating systems use carriage return and line feed ("\r\n"
). So if you try to execute a code written in Windows on Linux, you may get this error.
You must clear the carriage return characters to be able to execute the file.
The dos2unix
command-line tool is a DOS to Unix text file format converter and vice versa. You can use the dos2unix
tool to make your file Unix compatible.
Its usage is as follows.
dos2unix file.sh
The file will be converted to Unix format. You can now execute the file.
./file.sh
While we have explained the most common errors and solutions here, this error can have many code-related causes. You can solve this by choosing the solution that suits your application.
Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.
LinkedIn