ZSH: command not found: ls

ZSH: command not found: ls

ZSH ls command not found: 5 ways to fix

If you're a Mac or Linux user who recently migrated to Zsh as your default shell, you might have encountered the "command not found" error when trying to use the 'ls' command. This error can be frustrating, but don't worry, there are multiple solutions available to fix it. In this article, we will explore 5 ways to resolve the Zsh ls command not found problem.

What causes the Zsh ls command not found error?

Zsh is not recognizing the 'ls' command

The most common cause for this error is that Zsh is not recognizing the 'ls' command. This can happen when you have recently migrated to Zsh from Bash and have not yet fully set up your environment variables.

The command is not installed in your system

LS command might not be installed on your system, which might also cause "command not found" errors. This issue is most common in new Mac and Linux users who are not familiar with command-line functionalities.

The command's syntax is incorrect

Another possibility is that you might be typing the incorrect syntax for the 'ls' command.

5 Solutions to fix Zsh ls command not found error

1. Add the correct path variable for your command

The easiest way to fix this error is to add the correct path variable for your command. The path variable is used to tell your operating system where to find the command you are trying to run. For instance, to add the path variable for your 'ls' command, you need to add the following command to your terminal:

export PATH="$PATH:/usr/local/bin"

This command will add the path variable for the '/usr/local/bin' directory where the 'ls' command is usually located.

2. Use Homebrew to install command

One solution to resolve the "command not found" error is to use a package manager like Homebrew to install the 'ls' command. Homebrew is a package manager that simplifies the process of installing software on a Mac.

To install Homebrew on your Mac, you can use the following command in your terminal:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Once installed, use the following command to install the 'ls' command with Homebrew:

brew install coreutils

After installation, you can run the 'ls' command without any errors.

3. Export the path variable in .zshrc file

Another way to fix the Zsh ls command not found error is to export the path variable in your '~/.zshrc' file. This file is a configuration file that is loaded every time you start a new terminal session. To add the path variable for 'ls' command in your .zshrc file add the following command:

export PATH="$HOME/bin:/usr/local/bin:$PATH"

Once done, close and reopen your terminal, and try the 'ls' command again. This selection will add '/usr/local/bin' where the 'ls' command is located to your path variables.

4. Fix the Zsh command not found issue on Mac Terminal

If you're using Mac Terminal and see the 'command not found' error, you might be using a different shell.

To fix this error, follow these steps:

1. Open your terminal and go to Terminal > Preferences

2. Navigate to the General tab and check if shells open with the default 'login shell' option is selected

3. Next, check the box for "use zsh as a default login shell" option

4. Close Terminal preferences, and reopen your terminal. Now, try the 'ls' command again.

5. Reinstall Node Version Manager

If you recently installed Node Version Manager (NVM) and started receiving a "command not found" error, we recommend that you reinstall it using the following command:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash

After reinstalling NVM, close and reopen your terminal, and try the 'ls' command again.

In conclusion, there are several solutions to resolve the Zsh ls command not found error. Whether you need to install the command or make changes to your terminal's environment variables, these solutions should help you get the answer you're looking for.

Useful links:


Related articles

Ruslan Osipov
Written by author: Ruslan Osipov