Знайомство з використанням команди "whereis" у Linux та BSD з прикладами

Знайомство з використанням команди "whereis" у Linux та BSD з прикладами

12.12.2023
Автор: HostZealot Team
2 мін.
177

Перш ніж перейти до практичних прикладів, важливо зрозуміти, що таке команда "whereis" і чим вона корисна. Команда "whereis" в Linux використовується для пошуку бінарних файлів, вихідного коду і довідкових сторінок для команди. Вона шукає файли у каталозі, що робить її швидшою за інші команди, такі як "find".

Розуміння команди "whereis"

Команда "whereis" - це інструмент пошуку, спеціально розроблений для пошуку бінарних, вихідних і файлів довідкових сторінок. На відміну від інструментів пошуку загального призначення, "whereis" працює із заздалегідь визначеним набором каталогів, які зазвичай використовуються для зберігання файлів команд. Ця особливість дає "whereis" перевагу у швидкості і точності.

Розуміння розташування командних файлів може бути корисним у наступних сценаріях:

  • Пошук і усунення несправностей. Знання розташування бінарних або вихідних файлів команди може допомогти виявити проблеми з цією командою.
  • Написання сценаріїв. При написанні скриптів, особливо призначених для запуску на різних системах, важливо вказувати правильний шлях до команди.
  • Системне адміністрування. Адміністраторам часто потрібно перевірити, чи встановлені певні утиліти або їх версії. За місцем розташування програми іноді можна визначити її версію або спосіб встановлення.

Хоча спеціальні команди, такі як "find", пропонують більш широкі можливості пошуку, вони сканують всю файлову систему (або вказаний каталог). Для порівняння, команда "whereis" у Linux обмежує пошук заздалегідь визначеним списком каталогів, які як відомо, містять виконувані файли команд, вихідні файли та сторінки довідки. Такий підхід значно скорочує час пошуку, особливо на великих файлових системах.

Як використовувати "whereis" в Linux

Основний синтаксис команди в Linux наступний:

whereis [параметри] ім'я_файлу

Секція імені файлу в синтаксисі повинна містити файл, який ви хочете знайти. Наприклад, щоб знайти шлях до бінарних виконуваних файлів, вихідного коду або сторінок довідки, ви можете додати до синтаксису команду "ls":

whereis ls

Результат виконання наведеної вище команди може виглядати приблизно так:

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

Визначення місця розташування бінарного файлу

Якщо вам потрібно визначити місцезнаходження бінарного файлу Linux, ви можете скористатися командою "-b":

whereis -b whereis 
whereis: /usr/bin/whereis /usr/bin/X11/whereis

Зазначена команда знайде бінарний файл команди "whereis" і вкаже напрямок, де ця команда доступна у системі Linux.

Пошук довідкових сторінок

Для пошуку довідкових сторінок використовується команда "-m":

whereis -m whereis 
whereis: /usr/share/man/man1/whereis.1.gz

Вона працює подібно до пошуку бінарного файлу і надає вам шлях до довідкових сторінок у системі Linux.

Приклади використання "whereis" у системах BSD

1. Команди у FreeBSD

За допомогою whereis ви також можете шукати декілька аргументів одночасно. Ось приклад для bash і nano:

whereis bash nano 
bash: /usr/bin/bash /usr/share/man/man1/bash.1.gz /usr/share/info/bash.info.gz 
nano: /usr/bin/nano /usr/share/nano /usr/share/man/man1/nano.1.gz /usr/share/info/nano.info.gz

У прикладі nano ви можете шукати бінарні файли саме так:

whereis -b nano nano: /usr/bin/nano /usr/share/nano

І для довідкових сторінок nano:

whereis -m nano nano: /usr/share/man/man1/nano.1.gz /usr/share/info/nano.info.gz

За бажанням, ви можете шукати декілька речей одночасно, наприклад, бінарні файли firefox і nano, а також сторінки довідки bash:

whereis -bm nano firefox -m bash 
nano: /usr/bin/nano /usr/share/nano /usr/share/man/man1/nano.1.gz /usr/share/info/nano.info.gz firefox-m: 
bash: /usr/bin/bash /usr/share/man/man1/bash.1.gz /usr/share/info/bash.info.gz

2. Бібліотеки у OpenBSD

Припустимо, ви хочете побачити всі розташування. Опція "-l" надасть вам всі шляхи таким чином:

whereis -l 
bin: /usr/bin 
bin: /usr/sbin 
bin: /usr/lib 
bin: /usr/lib64 
bin: /etc bin: /usr/games 
bin: /usr/local/bin 
bin: /usr/local/sbin 
bin: /usr/local/etc 
bin: /usr/local/lib 
bin: /usr/local/game

Отже, команда "whereis" дає вам декілька збігів шляхів, включно з бібліотеками.

Поради та рекомендації щодо ефективного використання "whereis"

Ось список опцій "whereis", які ви можете використовувати для швидкого застосування:

-b
Бінарні файли
-s
Вихідні коди
-m
Посібник
-u
Незвичайні записи. (якщо команда має лише один запис такого типу).
-B (list)
Обмежити місця пошуку для бінарних файлів.
-S (list)
Обмежити місця пошуку для вихідних файлів.
-M (list)
Обмежити місця пошуку для довідників і документації.
-f
Шукати за іменами файлів. (Слід використовувати з будь-якими опціями -B, -S або -M).
-l
Перерахувати усі шляхи пошуку.
# VPS Поділитися:
Статті за темою