Як використовувати команду man в Linux: приховані секрети та основи

Все, що вам потрібно знати про Linux, є на його сторінках довідки. Наприклад, ви можете шукати команду для виконання завдання, навіть якщо ви не знаєте, як вона називається. Але як знайти сторінки man? Ось кілька хитрощів.

Вбудований посібник Linux

Є старий (із золотої ери Unix) жарт Linux про те, що єдина команда, яку вам потрібно знати, це людина, система точка входу до посібника користувача. У цьому є частка правди, але навіть людина може спочатку збити з пантелику. Або, точніше, пошук потрібної інформації може бути заплутаним.

Ви коли-небудь знали, що хочете зробити, але не знали назви команди, яка б виконала завдання? Ми, мабуть, усі там були. Це як намагатися знайти слово в словнику, коли ви його не знаєте.

Отже, як ви можете знайти те, що шукаєте? Що ж, є способи обійти цю проблему з людиною.

Цифри – ще одне питання для першокурсників. Які вони і що вони означають? Ви побачите такі речі, як man(2) або man(5), цитовані в документації та в Інтернеті. Ви також побачите посилання на команди, за якими слідують цифри, наприклад mount(2) і mount(8). Звичайно, не може бути більше однієї команди монтування, чи не так? Як ми побачимо, цифри важливі і відносно прості.

Говорячи про простий, пошук всередині людини досить простий, якщо ви знаєте, як це зробити. Насправді, є кілька зручних способів пошуку та навігації всередині людини. Давайте запалимо і подивимося!

Як відкрити посібник

Щоб використовувати man, ви вводите man у командному рядку, потім пробіл і команду Linux. man відкриває посібник з Linux на «довідкову сторінку», яка описує цю команду — якщо він зможе її знайти, звичайно.

Давайте введемо наступне і подивимося, що людина говорить про людину:

man man

The

Відкриється сторінка man для людини.

Сторінка людини для

Як бачите, це сторінка man(1).

Дотримуйтесь цих порад для навігації сторінкою:

Щоб переміщатися сторінкою керівництва по одному рядку: скористайтеся колесом прокрутки на миші або стрілками вгору та вниз і клавішами Enter.
Щоб переміщатися сторінкою керівництва по одному екрану: Натисніть пробіл і клавіші PgDn і PgUp.
Щоб перейти безпосередньо вгору або внизу сторінки керівництва: натисніть клавіші Home та End.

Якщо натиснути H, ви увійдете в розділ довідки та побачите таблицю альтернативних натискань клавіш, які ви можете використовувати. Перераховані вище, ймовірно, будуть більш природними для більшості людей.

Щоб вийти з користувача, просто натисніть Q.

Сторінка «Анатомія людини».

У верхній частині сторінки ви побачите заголовки «Ім’я» та «Синопсис». Існує конвенція щодо макета сторінок man. Існують сторінки керівництва для команд, програм і функцій програмування (бібліотечні підпрограми). Ви не побачите всі ці заголовки на кожній man-сторінці, оскільки деякі з них застосовуються лише до певних типів команд.

  6 чудових музичних плеєрів для Linux

Нижче наведено деякі із заголовків, які ви можете побачити:

Ім’я: назва команди, яку описує сторінка керівництва.
Синопсис: короткий зміст команди та її синтаксису.
Конфігурація: деталі конфігурації пристрою.
Опис: пояснення того, що робить програма.
Параметри: опис параметрів командного рядка, які команда приймає.
Статус виходу: можливі значення статусу виходу для команди та причини їх використання.
Повернене значення: якщо сторінка керівництва призначена для підпрограми бібліотеки, це описує значення, яке бібліотечна програма може надіслати назад до функції, яка викликала цю процедуру.
Помилки: список значень, які можуть бути розміщені в errno у разі помилки.
Середовище: список змінних середовища, які впливають на команду чи програму та яким чином.
Файли: список файлів, які використовує команда або програма, наприклад файли конфігурації.
Атрибути: короткий огляд різних атрибутів команди.
Версії: відомості про версії ядра або бібліотеки Linux, де системний виклик або функція бібліотеки вперше з’явилися або значно змінилися порівняно з попередніми версіями.
Відповідність: опис будь-яких стандартів, яким може відповідати команда, наприклад POSIX.
Примітки: Різні примітки.
Помилки: відомі проблеми.
Приклади: один або кілька прикладів, що демонструють використання команди.
Автори: Люди, які написали або підтримали команду.
Дивіться також: Рекомендована література, пов’язана з командою або темою.

Людина Розділи

Якщо ви прокрутите вниз пару сторінок, ви побачите список розділів посібника.

Розділи посібника перераховані в

Розділи:

Загальні команди: команди, які ви використовуєте в командному рядку.
Системні виклики: функції, які надає ядро, які програма може викликати.
Функції бібліотеки: програми функцій можуть викликати бібліотеки коду (в основному стандарт C).
Спеціальні файли: зазвичай пристрої, наприклад, знайдені в /dev, та їх драйвери.
Формати файлів та угоди: формати файлів, наприклад файли passwd, таблиця cron та архівні файли tar.
Ігри: описи команд, наприклад fortune, які відображають цитати з бази даних, коли ви їх запускаєте.
Різне: описи таких речей, як inodes, параметри завантаження та сама людина.
Адміністрування системи: команди та демони зазвичай зарезервовані для роботи з root.
Підпрограми ядра: інформація, що стосується внутрішньої роботи ядра. Сюди входять, наприклад, функціональні інтерфейси та змінні, корисні для програмістів, які пишуть драйвери пристроїв. У більшості систем цей розділ не встановлено.

Коли ви бачите команду, за якою слідує цифра, це посилається на опис цієї команди в цьому розділі посібника. Наприклад, man(1) посилається на запис у першому розділі посібника, що описує команду man.

На зображенні вище ви бачите посилання на man(7). Це означає, що в іншому розділі є більше інформації про людину. Коли ми вперше відкрили сторінку керівництва, вона відобразила man(1). Якщо ви вводите лише man без номера розділу, man шукає всі розділи по порядку, шукаючи запис для введеної команди. Звичайно, він знайшов людину(1) перед людиною(7).

Якщо ви хочете змусити людину знайти запис із певного розділу, ви повинні включити номер розділу в командний рядок.

Наприклад, ми вводимо наступне, щоб відкрити запис для людини в розділі сьомий:

man 7 man

The

Посібник відкривається для запису чоловіка в розділі сьомий.

  5 найкращих аудіоінструментів для Linux

А

Ця довідкова сторінка містить інструкції щодо написання сторінок довідника. Він описує формат файлу та макроси, які ви можете використовувати, щоб виконати частину роботи за вас. Сторінка man(1) у першому розділі, яку ми розглядали раніше, описує, як використовувати сам man.

Як знайти записи в розділах

Зазвичай, якщо ви просто хочете знати, як використовувати команду, вам не потрібно вказувати номер розділу. man знайде стандартний запис, який описує, як використовувати цю команду в першому розділі посібника. Однак іноді вам потрібно відкрити запис команди в певному розділі, оскільки вам потрібна інша інформація.

Ви можете легко дізнатися, які розділи посібника містять записи для команди. Кожна сторінка man має назву та короткий опис. Параметр -f (whatis) шукає заголовки сторінок і повертає список збігів.

Для цього прикладу ми вводимо наступне:

man -f man

The

Дві сторінки керівництва для man перераховані разом із номерами розділів та коротким описом. Але будьте обережні — деякі записи мають однакові назви, але описують різні команди та функції.

Наприклад, ми вводимо наступне:

man -f printf

The

Здається, що для printf знайдено два записи: перший у першому розділі, а інший у третьому. Однак це різні команди. Довідкова сторінка в першому розділі описує команду командного рядка printf, яка форматує вихід у вікні терміналу. Довідкова сторінка в третьому розділі описує printf сімейство бібліотечних функцій в Мова програмування C.

Також можна шукати за короткими описами, а також заголовками сторінок. Для цього ви використовуєте параметр -k (пропозицію). Це також відповідатиме зустрічам пошукового терміну в інших, довших, словах.

Набираємо наступне:

man -k printf

The

Багато з цих команд описані на одних і тих самих сторінках керівництва, оскільки їх основна функціональність в основному однакова. Довідкова сторінка для vprintf описує функціональні можливості 10 команд, перерахованих на зображенні вище.

Ви можете використовувати цю функцію для пошуку інформації, пов’язаної з тим, чого ви намагаєтеся досягти, навіть якщо ви не знаєте назви команди, яку хочете використовувати.

Скажімо, ви хочете змінити пароль облікового запису користувача. Ми можемо шукати будь-які команди, які згадують «користувач» у заголовках або описах сторінки керівництва. Потім ми можемо передати його через grep, щоб шукати записи, які містять «пароль».

Для цього вводимо наступне:

man -k 'user ' | grep password

Оскільки ми взяли слово «користувач» в одинарні лапки і включили пробіл в кінці, воно знайде відповідності лише для «користувача», а не «користувачів». Швидкий перегляд результатів пошуку показує нам, що ймовірним кандидатом є passwd.

Оскільки це сторінка керівництва першого розділу, і нам не потрібно включати номер розділу в команду, ми вводимо наступне:

man passwd

Скажімо, нам потрібна команда, яка підраховує кількість слів у текстовому файлі. Ми вводимо наступне, щоб перевірити, чи існує щось подібне:

man -k word | grep count

The

Щоб дізнатися все, що потрібно знати про підрахунок слів, ми вводимо цю команду:

man wc

Говорячи про wc, ми також можемо використовувати параметр -k (apropos) з однією крапкою (.) як ціль пошуку, яка буде відповідати всьому. Якщо ми переведемо це через wc і скористаємося опцією -l (рядки), це повідомить нам, скільки сторінок man є на комп’ютері.

  Як слухати радіо на робочому столі Linux за допомогою Gradio

Щоб зробити все це, ми вводимо таку команду:

man -k . | wc -l

The

На цьому комп’ютері Ubuntu є 6706 сторінок керівництва, але не дивуйтеся, якщо на вашому це число буде іншим. Це може відрізнятися залежно від того, які програмні пакети та утиліти є на вашому комп’ютері, а також які сторінки керівництва були попередньо встановлені.

Пошук на сторінці людини

Ви також можете шукати вперед або назад зі свого поточного положення на сторінці довідника.

Для цього прикладу ми вводимо наступне, щоб відкрити сторінку керівництва для команди history:

man history

The

Щоб здійснити пошук вперед, ми натискаємо косу риску (/), а потім вводимо слово «подія». Ціль пошуку з’являється в нижній частині вікна терміналу, і ми натискаємо Enter, щоб почати пошук.

The

У вікні відображається перший результат будь-яких знайдених збігів, і вони виділені.

А

Натисніть «n», щоб перейти від результату до результату внизу сторінки. Щоб здійснити пошук назад на сторінці керівництва, натисніть «N»; це поверне вас на початок сторінки.

Щоб увімкнути або вимкнути виділення, натисніть Esc+U.

Якщо ви перебуваєте в нижній частині сторінки керівництва і хочете виконати пошук угору, натисніть знак питання (?), а потім введіть пошуковий термін. Ми шукали «вхід».

А

Знову ж таки, усі відповідні результати виділено.

Результати за пошуковим терміном

Щоб знайти наступний відповідний результат, натисніть «n», щоб перейти до початку сторінки керівництва. Натисніть «N», щоб перейти до попереднього результату відповідності та перейти до кінця сторінки керівництва.

Існує інший спосіб пошуку на сторінці довідника. Він приховує всі рядки, які не збігаються з пошуковим терміном, тому найкраще використовувати номери рядків із цією технікою.

Якщо ми введемо «-N» і натиснемо Enter, ми побачимо номери рядків на сторінці довідки.

Ми натискаємо амперсанд (&), вводимо наш пошуковий термін (число), а потім натискаємо Enter.

А

Відображаються лише рядки, які містять наш пошуковий термін.

Рядки, що містять слово

Їх легко переглянути й знайти те, що виглядає цікаво. Ми вважаємо, що рядок 292 виглядає багатообіцяючим, тому ми хочемо перейти до цього розділу сторінки керівництва та перевірити його.

Щоб знову побачити всі рядки, ми натискаємо амперсанд (&), а потім натискаємо Enter.

The

Ми вводимо «292», а потім «g», щоб перейти до цього рядка.

Команда для переходу до рядка

Як тільки ми введемо «g», ми потрапляємо до рядка 292 (саме чому «g» не з’являється на зображенні вище). Потім у верхній частині вікна терміналу відображається рядок 292.

Ви можете натиснути «-n» і натиснути Enter, щоб видалити номери рядків.

Прочитайте Чудовий посібник

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

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