Дізнайтесь опис команди Linux та де вона знаходиться
У Linux існує кілька способів ідентифікувати незнайому команду та дізнатися її точне місце зберігання на диску. Вибір інструменту залежить від того, яка саме інформація вам потрібна:
- Для швидкого опису: використовуйте
whatis [команда]; - Для пошуку за темою: команда
apropos [ключове слово]; - Для визначення типу: утиліта
type [команда]; - Для пошуку шляху:
which [команда]; - Для пошуку документації:
whereis [команда].
Далі ми розберемо кожен інструмент, щоб ви могли впевнено керувати своїм робочим оточенням.
Швидка розвідка: whatis та apropos
Коли ви працюєте в терміналі, документація — ваш головний союзник. Проте повноцінне читання мануалів часто нагадує спробу прочитати енциклопедію, коли вам потрібно просто дізнатися значення одного терміну.
1. Команда whatis
Буває, ви бачите в туторіалі команду (наприклад, tar) і не хочете ризикувати, запускаючи її всліпу. whatis працює як миттєвий перекладач з мови Linux на людську. Вона звертається до коротких індексів мануалів і видає суть функції в один рядок.
Як це працює?
Ви вводите команду в термінал:
whatis tar
Система відповіbase:
tar (1) - an archiving utility
Тепер ви точно знаєте, що це інструмент для роботи з архівами, і можете спокійно працювати далі. Якщо опис здається вам обірваним на пів слові (що іноді трапляється через налаштування екрана), просто додайте прапорець -l. Це змусить систему показати повний рядок опису:
whatis -l tar
2. Команда apropos
Це інструмент для ситуацій, коли ви знаєте, що хочете зробити, але не знаєте, чим. Наприклад, ви хочете видалити дублікати файлів або налаштувати мережу, але назва утиліти вилетіла з голови. apropos сканує всі доступні описи в системі на предмет вашого запиту.
Як це влаштовано?
Припустимо, ви шукаєте щось для архівації:
apropos archive
Linux виведе цілий список інструменті. Наприклад, tar, zip, ar та інші. Кожен рядок міститиме назву команди та короткий опис, щоб ви могли обрати найкращий варіант.
Якщо результатів занадто багато і ви тонете в списку, спробуйте прапорець -e (exact). Він відфільтрує видачу і залишить лише ті команди, де ваше ключове слово є точним збігом:
apropos -e archive
Важливо: обидві ці команди працюють на основі індексованої бази даних. Якщо ви щойно встановили нову круту утиліту, а whatis каже, що нічого про неї не знає — не панікуйте. Просто оновіть внутрішні індекси, щоб система побачила нові мануали:
sudo mandb
З’ясовуємо походження команди
Щоб професійно працювати з Linux, важливо розуміти, що коли ви вводите слово в терміналі, система не завжди запускає окрему програму. Вона діє як сортувальний центр, який розподіляє запити за трьома основними категоріями.
1. Команда type
Це ваш головний інструмент, щоб дізнатись, що означає конкретна команда і звідки вона взялась.
Детальніше про типи команд
- Вбудовані команди (Built-ins)
Базові речі, як-от cd або echo, є частиною самої оболонки (Bash чи Zsh). Вони не існують як окремі файли на диску.
type cd
- Зовнішні утиліти
Це повноцінні програми, які лежать у системних папках.
type tar
- Аліаси (Aliases)
Ви можете помітити, що деякі команди працюють, хоча таких програм в Linux не існує. Напрклад, ll це лише коротка назва (alias) для довгої команди ls -l.
Це можна дізнатись такою командою:
type ll
3. Команда which
Якщо type пояснює природу команди, то which фокусується виключно на пошуку шляху до виконуваного файлу. Вона сканує ваші системні папки і видає шлях до першої знайденої програми з такою назвою.
Як це використовувати?
Це критично важливо, коли у вас встановлено кілька версій однієї програми (наприклад, різні версії Python).
which python
Ви побачите точне місце розташування файлу, який запускається автоматично.
Корисний прапорець: якщо ви хочете побачити абсолютно всі версії цієї програми, які є в системних шляхах, додайте параметр -a:
which -a python
На відміну від type, команда which ігнорує аліаси та вбудовані функції оболонки. Вона шукає лише реальні файли на вашому жорсткому диску.
Команда whereis
Якщо which шукає лише виконуваний файл, то whereis діє як справжній системний детектив. Окрім самої програми вона знаходить і її вихідний код та сторінки документації (man pages).
Як це використовувати?
Це ідеальний інструмент, коли вам потрібно переконатися, що програма встановлена повністю, або ви хочете знайти шлях до мануала, щоб почитати його пізніше.
Спробуйте знайти все, що стосується утиліти grep:
whereis grep
У відповідь система видасть список шляхів. Наприклад:
/usr/bin/grep— шлях до самої програми;/usr/share/man/man1/grep.1.gz— локація стисненого мануала.
Читання повної документації
Всі описані вище способи дають швидку довідку. Але якщо вам потрібна вичерпна інформація з усіма можливими прапорцями та прикладами, використовуйте першоджерело — мануали.
Як відкрити повну інструкцію:
man tar
Навігація всередині:
- стрілки — гортання тексту;
/— пошук за словом;q— вихід із режиму читання.
Післяслово
Термінал Linux — це величезний всесвіт, і вміння швидко орієнтуватися в ньому за допомогою вбудованих інструментів економить ваш найцінніший ресурс — час.
Кілька порад на майбутнє
- Не бійтеся експериментувати: щоразу, коли бачите нову команду, пропустіть її через whatis або type.
- Автоматизуйте: якщо ви часто використовуєте type для перевірки аліасів, створіть для цього власні зручні скорочення.
Будьте допитливими: Linux відкритий для тих, хто ставить питання.
Якщо довго не зможете знайти на них відповідь — ITEDU відкритий для вас і ваших питань.