Как узнать где находится команда в Linux: 5 быстрых способов

Краткий ответ. Если нужно быстро узнать где находится команда Linux, используйте одну из этих команд.

which ls

whereis ls

type ls

whatis ls

apropos ls

Эти команды помогают понять:

  • где находится программа
  • что делает команда
  • является ли она встроенной командой shell
  • где находится документация

В большинстве случаев администраторы используют команды which и type.

5 команд Linux, которые мгновенно покажут что делает любая команда
5 команд Linux, которые мгновенно покажут что делает любая команда

Где Linux хранит команды

Все команды Linux это обычные исполняемые файлы. Они находятся в системных каталогах.

/usr/bin

/usr/sbin

/bin

/sbin

/usr/local/bin

Эти каталоги перечислены в переменной окружения PATH.

Посмотреть ее можно так:

echo $PATH

Пример вывода:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Где Linux хранит команды
Где Linux хранит команды

Это означает что shell ищет команды именно в этих каталогах.

Можно открыть любой каталог и посмотреть какие команды там установлены.

ls /usr/bin

Обычно там находятся тысячи программ.

Команда which для поиска пути программы

Команда which показывает полный путь к исполняемому файлу.

Пример:

which ls

Вывод:

/usr/bin/ls

Это означает что команда находится в каталоге /usr/bin.

Если установлено несколько версий программы, можно показать все.

which -a python

Пример вывода:

/usr/bin/python

/usr/local/bin/python

Это полезно когда нужно понять какая версия программы запускается по умолчанию.

Совет. Если вы только начинаете работать с терминалом Linux, рекомендую также прочитать подробное руководство Команда ls в Linux: как пользоваться, опции и примеры. В этой статье разобраны реальные примеры просмотра файлов, каталогов и скрытых элементов системы, что поможет быстрее ориентироваться в файловой структуре Linux.

Команда whereis для поиска всех файлов команды

Команда whereis показывает больше информации.

Она ищет:

  • исполняемый файл
  • исходный код
  • man страницу

Пример:

whereis ls

Вывод может быть таким:

ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz

Команда whereis для поиска всех файлов команды
Команда whereis для поиска всех файлов команды

Первый путь это исполняемый файл. Второй путь это документация команды.

Команда type для проверки типа команды

Команда type показывает что именно является командой.

Это может быть:

  • бинарная программа
  • alias
  • builtin команда shell
  • функция

Пример:

type ls

Вывод:

ls is /usr/bin/ls

Теперь проверим встроенную команду shell.

type cd

Вывод:

cd is a shell builtin

Это означает что команда встроена прямо в shell.

Команда whatis для быстрого описания команды

Если вы встретили незнакомую команду, можно быстро узнать что она делает.

whatis tar

Пример вывода:

tar (1) archiving utility

Это краткое описание из документации man.

Если описание обрезается, можно использовать:

whatis -l tar

Команда apropos для поиска команд

Команда apropos позволяет искать команды по ключевым словам.

Например нужно найти инструменты для архивации файлов.

apropos archive

Пример вывода:

tar archiving utility

zip package and compress files

ar create archive

Это полезно когда вы знаете задачу, но не знаете название команды.

Как посмотреть переменную PATH

Переменная PATH определяет где система ищет команды.

Проверка:

echo $PATH

Можно вывести каждый каталог отдельно:

echo $PATH | tr ':' '\n'

Пример вывода:

/usr/local/bin

/usr/bin

/bin

Каждый каталог содержит множество команд.

Как узнать все команды Linux

Если нужно посмотреть все команды которые доступны в системе, используйте:

compgen -c

Эта команда выводит список всех доступных команд shell.

Как узнать все команды Linux
Как узнать все команды Linux

Можно посчитать их количество:

compgen -c | wc -l

На обычной системе это может быть более 1500 команд.

Частые ошибки пользователей

  • команда which не показывает результат потому что команда builtin
  • whereis ничего не показывает если программа не установлена
  • запускается не та версия программы если в системе несколько бинарников
  • команда не найдена если каталог не входит в PATH

FAQ

Как узнать путь команды Linux
which команда или type команда
Какая команда показывает где находится программа
which или whereis
Почему which не показывает команду cd
Потому что cd является builtin командой shell.
Как найти команду по описанию
apropos keyword
Как открыть документацию команды
man команда
Где Linux хранит команды
Основные каталоги: /usr/bin , /bin, /usr/sbin
Как узнать все команды Linux
compgen -c
Как быстро узнать что делает команда
whatis команда

Вывод

В Linux существуют тысячи команд и иногда сложно понять что именно делает та или иная программа.

К счастью существует несколько встроенных инструментов которые позволяют быстро разобраться с любой командой.

Самые полезные:

which

whereis

type

whatis

apropos

Освоив эти команды вы сможете быстро узнать где находится программа, что она делает и как получить полную документацию.

Это один из базовых навыков для работы в Linux терминале и системном администрировании.

Если вы часто работаете в консоли, попробуйте протестировать эти команды на разных программах. Иногда можно обнаружить очень полезные инструменты о которых вы даже не подозревали.

Понравилась статья?

Помогите Setiwik.ru создавать больше глубоких обзоров и новостей. Один клик и ваш вклад помогает держать серверы включёнными и авторов мотивированными!

Спасибо, что вы с нами!

Nazario

Я Назар. Уже больше десяти лет я работаю с Linux и Windows системами каждый день. Это моя основная профессия и большая часть жизни.
Всё, что ты читаешь на Setiwik.ru, начинается с официальной документации, мануалов и технических спецификаций. Я их изучаю очень внимательно. Но ценность статей появляется именно тогда, когда я беру эту базу и пропускаю через десятки реальных ситуаций: ночные аварии, странные баги, которые не гуглятся с первого раза, выстраданные конфиги и проверенные обходные пути.
Я не обещаю истину в последней инстанции. Но если мой опыт поможет тебе сэкономить хотя бы пару часов нервов и перезагрузок, значит всё это было не зря. Здесь только практика: от тонкой настройки серверов до самых неожиданных ситуаций, которые официальные руководства обычно обходят стороной.
Setiwik.ru это место, где IT становится понятнее и спокойнее. Заходи почаще. Будем разбираться вместе.

Практические инструкции по Windows и Linux
Добавить комментарий