Как найти Linux команды и программы с помощью Whereis

Вы когда-нибудь пытались найти расположение команды, программы или приложения, но не знали, где искать? Наилучшим методом поиска программ является команда whereis.

Согласно man-страницам, «whereis находит двоичные файлы, исходные файлы и файлы руководства для указанных имен команд. Предоставленные имена сначала удаляются из начальных компонентов имени пути и любого (одного) конечного расширения … Whereis затем пытается найти указанная требуемая программа в стандартных местах Linux и в местах, указанных в $ PATH и $ MANPATH. «

Следовательно, по сути, команда whereis может найти исходный код, руководства и местоположение программы.

Как найти программу с помощью Whereis

Линукс где вывод

Давайте попробуем это с telnet:

где телнет

Вывод вышеуказанной команды выглядит следующим образом:

telnet: / usr / bin / telnet /urs/bin/telnet.netkit ...

Если вы просто хотите найти местоположение программы, вы можете использовать ключ -b следующим образом:

где -b телнет

Это возвращает следующий результат:

telnet: / usr / bin / telnet /usr/bin/telnet.netkit ...

В качестве альтернативы, если вы просто хотите узнать расположение руководств, вы можете использовать ключ -m.

где -m телнет

Результат для вышеуказанной команды следующий:

telnet: /usr/share/man/man1/telnet.1.gz

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

Для команды whereis доступны другие параметры, включая -u, который ищет необычные файлы.

В руководстве сказано следующее о ключе -u:

Команда называется необычной, если в ней нет только одной записи каждого явно запрошенного типа. Таким образом, ‘whereis -m -u *’ запрашивает те файлы в текущем каталоге, у которых нет файла документации, или более одного.

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

Другие переключатели Whereis

Если у вас есть расплывчатое представление о расположении программы или команды и вы хотите искать определенный набор каталогов, вы можете использовать ключ -B для поиска двоичных файлов в указанном списке.

Например:

где -b -B / usr / bin -f telnet

Приведенная выше команда имеет несколько частей. Прежде всего, есть ключ -b, который означает, что мы ищем только двоичные файлы (сами программы). Ключ -B используется для предоставления списка мест для поиска двоичных файлов, а список папок заканчивается параметром -f. Поэтому в приведенной выше команде единственный каталог, который ищется — это / usr / bin. Наконец, телнет после -f сообщает, что он ищет.

Альтернативой ключу -B является -M, который ищет руководства в определенном наборе папок.

Командная строка для ключа -M будет выглядеть следующим образом:

где -m -M / usr / share / man / man1 -f telnet

Логика для -M такая же, как и для -B. -M сообщает, где искать руководства, -M сообщает, что идет список папок, в которых следует искать руководства. -F завершает список файлов, а telnet — это программа, для которой команда whereis будет искать руководства.

Наконец, ключ -S может использоваться для вывода списка папок для поиска исходного кода.

Ссылка на основную публикацию