Сообщение “command not found” (команда не найдена) – это распространенная ошибка в Bash (и других оболочках Unix-подобных систем), которая возникает, когда вы пытаетесь выполнить команду, которую система не может найти. Это может быть очень frustriрующе, особенно для новичков. В этой статье мы разберем причины возникновения этой ошибки и способы ее решения.
Ошибка “command not found” означает, что Bash не смог найти исполняемый файл, соответствующий введенной вами команде. Bash – это интерпретатор командной строки, который выполняет ваши команды. Когда вы вводите команду, Bash ищет ее в нескольких местах, называемых переменными окружения PATH. Если команда не найдена ни в одном из этих мест, вы получаете сообщение об ошибке.
Bash работает следующим образом:
Важно понимать, что Bash различает регистр символов.  Команда ls не эквивалентна команде Ls или LS.
Переменная PATH необходима для того, чтобы не указывать полный путь к каждой команде, которую вы хотите выполнить.  Представьте, если бы вам приходилось каждый раз писать /usr/bin/ls вместо ls – это было бы крайне неудобно.  PATH позволяет вам запускать команды из любого каталога, не заботясь о их точном местоположении на жестком диске.
Bash последовательно проверяет каждый каталог, указанный в переменной PATH. Если команда найдена в одном из каталогов, поиск прекращается, и команда выполняется. Если команда не найдена ни в одном из каталогов, выводится сообщение об ошибке.
/home/user/bin/mycommand, вы можете выполнить ее, набрав /home/user/bin/mycommand.apt на Debian/Ubuntu, yum на CentOS/RHEL, pacman на Arch Linux, brew на macOS).ls -l <имя_файла>. Если права доступа не позволяют вам выполнять файл, вам может потребоваться изменить их с помощью команды chmod +x <имя_файла>.Чтобы добавить каталог в переменную PATH, вы можете использовать команду export.  Например, чтобы добавить каталог /home/user/bin в PATH, выполните следующую команду:
bash
export PATH="$PATH:/home/user/bin"
Эта команда добавляет /home/user/bin в конец существующего значения PATH.  Изменения будут действовать только для текущего сеанса терминала.  Чтобы изменения сохранились после перезагрузки, вам нужно добавить эту строку в ваш файл конфигурации оболочки (например, .bashrc, .bash_profile, .zshrc).
which <имя_команды>, которая покажет путь к исполняемому файлу, если он установлен.export без добавления в конфигурационный файл..bashrc и другие файлы конфигурации оболочки? Это файлы, которые содержат настройки вашей оболочки, включая переменную PATH.echo $PATH.chmod +x <имя_файла> для изменения прав доступа.🔍 Аналитический обзор: Введение К 2025 году Россия стала одной из трёх стран мира с…
Россия без глобального интернета: что происходит и почему это важно каждому Введение ⚡ Российский интернет…
😌 Введение: почему эта инструкция обязательна к прочтению Каждый гражданин хоть раз в жизни может…
Перечень бесплатных интернет-ресурсов: Которые будут работать даже при отключенном интернете. Социально значимые сайты по постановлению…
Что такое генераторы Bash-скриптов? Генераторы Bash-скриптов – это инструменты, которые позволяют создавать скрипты Bash (командные…
Что такое скрипты с правами sudo? Скрипты с правами sudo – это программы, написанные на…