Как да използвате ефективно Man Pages в Linux

Сподели

Добрата документация е абсолютно необходима за всеки софтуер и този принцип се разпростира и върху командите на Linux.

Множество Linux дистрибуции и общности с отворен код предлагат изчерпателна документация, която е лесно достъпна в Интернет.

Тази документация предоставя задълбочена информация, инструкции и обяснения относно командите на Linux, като гарантира, че потребителите разполагат с ресурсите, от които се нуждаят, за да използват ефективно и разбират наличните за тях инструменти на командния ред.

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

човек“команда е съкратена форма на”ръководство” и служи като интерфейс за достъп до справочните ръководства на системата. Тези ръководства, известни също като „man страници” съдържа подробна документация за отделни команди.

Например, man страниците на команди като mkdir, rmdir, dd и други предоставят подробна документация за съответните им функционалности и използване.

$ man mkdir
$ man rmdir
$ man dd

Човек трябва да е запознат с командата „man“, за да използва ефективно Linux от терминала.

синтаксис на командата man

Синтаксисът на човек командата е проста:

$ man [OPTIONS] ...   ...

Точно като всяка друга команда на Linux, двойката квадратни скоби ([]) представлява незадължителния аргумент, докато двойката ъглови скоби (<>) представлява задължителния аргумент.

Раздели на мъжката команда

Освен командите на обвивката, Linux също поддържа други програмни конструкции като системни извиквания, извиквания на библиотека, специални файлове и т.н. За по-добра организация всяка програмна конструкция е групирана в специална група, наречена секции.

Така че нека обсъдим накратко всеки раздел за мъже:

  • Секция 1 – Този раздел съдържа man страници на изпълними програми или команди на обвивката. Например cut, gzip, uniq и др.
  • Раздел 2 – Този раздел съдържа man страници на системни повиквания. Системно повикване се използва от ядрото на Linux, за да разкрие своята функционалност. Общите системни повиквания са – open(), read(), write(), close(), lseek()и т.н.
  • Раздел 3 – Този раздел съдържа man страници на извиквания на библиотека. Извикванията на библиотеката са функциите, предоставени от библиотеките на потребителското пространство. Например, strlen() функция от библиотеката с низове, fopen() функция от стандартната входно/изходна библиотека и др.
  • Раздел 4 – Този раздел съдържа man страници на специалните файлове. Обикновено тези файлове присъстват под /dev указател. Например, /dev/null, /dev/fullи т.н.
  • Раздел 5 – Този раздел съдържа страници с ръководство за файловите формати и конвенции. Например, /etc/hosts, /etc/shadowи така нататък.
  • Раздел 6 – Този раздел съдържа man страници, свързани с игри.
  • Раздел 7 – Този раздел съдържа man страници на различни команди. Например, човек и Гроф.

В това ръководство за начинаещи ще навлезем в тънкостите на командата „човек“, като придобием задълбочени знания чрез практически примери.

1. Вижте Man страницата на Linux Command

Едно от основните приложения на човек командата е да покаже системната документация. Валидният аргумент за командата man е името на програмата, помощната програма или функцията.

За да разберем това, нека използваме следната команда, за да видим страницата с ръководството на командата за заспиване.

$ man sleep
Вижте страницата с ръководство за команди на Linux
Вижте страницата с ръководство за команди на Linux

В горния резултат можем да видим, че човек командата показва подробна информация за сън команда. Можем да натиснем 'q' клавиш за излизане от прозореца на страницата на ръководството и връщане обратно към терминала.

Ако наблюдавате внимателно, можем да видим, че в горния ляв и десен ъгъл има число, оградено в скоби след името на командата. Това число представлява секцията от страницата на ръководството.

Например в горния резултат, СЪН (1) се използва за представяне на раздел 1 на страницата на човека.

2. Навигирайте през Man Page

Всяка страница с ръководство предоставя изчерпателна информация. Например описанието на командата с всички поддържани опции, кодове за изход, автор на командата, известни проблеми/бъгове и др.

Такава подробна информация не може да се покаже в един прозорец на терминала, следователно по подразбиране човек командата използва помощната програма за пейджър, наречена less.

Можем да използваме следните команди за пейджър, за да навигираме ефективно през страницата на ръководството:

  • Стрелка нагоре – за придвижване напред в man страница с един ред.
  • Стрелка надолу – за придвижване назад в man страница с един ред.
  • f или пространство – за придвижване напред в страница на ръководство с един терминален прозорец.
  • b – за придвижване назад в страницата на ръководството с един терминален прозорец.
  • /модел – за търсене на модел в страница на ръководство в посока напред.
  • ?модел – за търсене на модел в man страница в обратна посока.

3. Вижте страницата Man от конкретен раздел

Много Linux команди са именувани на системните извиквания или библиотечните функции. Например chown е команда на Linux, както и системно извикване. По същия начин, сън е команда на Linux, както и библиотечна функция.

По подразбиране, човек командата търси документацията във всички секции и показва страницата от първата съответстваща секция.

Например в предишния пример командата – човек спи показва страницата на ръководството от раздел 1 само дори ако страницата на ръководството присъства и в раздел 3. В такива случаи можем да използваме указване на номера на раздела като аргумент на командния ред на човек команда.

Сега, нека видим страницата с ръководството на sleep() библиотека с помощта на следната команда:

$ man 3 sleep

В горната команда числото 3 след командата man представлява раздел 3.

Вижте страницата Man на конкретен раздел
Вижте страницата Man на конкретен раздел

4. Вижте страницата Man от всички секции

В предишните примери видяхме как да видите страница на ръководство от стандартната, както и от конкретния раздел. Въпреки това, понякога не знаем другите секции, в които е достъпна страницата на ръководството.

В такива случаи можем да използваме -a опция с командата за преглед на страниците на ръководството от всички секции.

$ man -a sleep

С тази опция командата man показва всички страници на man една по една. Следователно, за да видим следващата страница на ръководство, трябва да излезем от текущата страница на ръководство, като натиснем ‘q’ ключ.

Например следните инструкции на екрана се показват след натискане на 'q' ключ.

Вижте страницата Man на всички секции
Вижте Man страницата на всички секции

5. Търсете секции на страницата Man

В предишния пример видяхме как да преглеждаме man страниците от всички секции. Понякога обаче просто искаме да знаем секциите, в които е налична конкретната страница с ръководство.

В такива случаи можем да използваме -f опция за показване на секцията от страницата на ръководството заедно с краткото описание.

$ man -f sleep
Търсете раздели на страницата Man
Търсете раздели на страницата Man

В горния резултат можем да видим кратката информация за сън съответно от раздели 3 и 1.

6. Търсете Man Pages по ключова дума

Понякога искаме да търсим по конкретна ключова дума в описанието на страницата с ръководство. В такива случаи можем да използваме -k опция, която изброява man страниците по ключова дума.

Сега нека изброим всички страници с ръководство, в които думата сън присъства:

$ man -k sleep
Търсете Man Pages по ключова дума
Търсете Man Pages по ключова дума

7. Намерете местоположението на източника на Man Page

Man страницата е обикновен текстов файл, който е компресиран с помощта на командата gzip, като се използва -w опцията ще отпечата местоположението на файла на страницата на ръководството.

$ man -a -w sleep

/usr/share/man/man1/sleep.1.gz
/usr/share/man/man3/sleep.3.gz

В горния изход можем да видим, че файлът на man страницата от раздел 1 присъства под /usr/share/man/man1 указател. По същия начин, файлът на man страницата от раздел 3 присъства под /usr/share/man/man3 указател.

8. Вижте страницата Man в браузъра за помощ на GNOME

Досега показвахме всички man страници само на терминала. Въпреки това можем да ги видим и в GNOME помогнете и на браузъра, като използвате писък команда.

$ yelp man:sleep
Вижте страницата Man в помощта на Gnome
Вижте страницата Man в помощта на Gnome

Важно е да се отбележи, че този метод е полезен само ако GNOME Desktop GUI е на разположение.

9. Преглед на Man страница в уеб браузър

В допълнение към това можем да използваме и -H опция за преглед на страницата на ръководството в уеб браузър като напр Firefox браузър.

$ man -Hfirefox sleep
Преглед на страницата Man в браузъра
Преглед на страницата Man в браузъра

В някои системи може да получим грешката:

man: command exited with status 3: (cd /tmp/hmanQf1PgM && /usr/lib/man-db/zsoelim) | (cd /tmp/hmanQf1PgM && /usr/lib/man-db/manconv -f UTF-8:ISO-8859-1 -t UTF-8//IGNORE) | (cd /tmp/hmanQf1PgM && preconv -e UTF-8) | (cd /tmp/hmanQf1PgM && tbl) | (cd /tmp/hmanQf1PgM && groff -mandoc -Thtml)

За да коригираме тази грешка, трябва да инсталираме Гроф помощна програма, която е система за набор, която обикновено се използва за форматиране и обработка на документи с обикновен текст.

$ sudo apt install groff         [On Debian, Ubuntu and Mint]
$ sudo yum install groff         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/groff  [On Gentoo Linux]
$ sudo apk add groff             [On Alpine Linux]
$ sudo pacman -S groff           [On Arch Linux]
$ sudo zypper install groff      [On OpenSUSE]    
Заключение

В това ръководство обсъдихме как да видите системната документация на Linux. Проучихме използването на „човек” за показване на системна документация както на терминала, така и в рамките на UI инструменти.

Знаете ли за някакъв друг начин за достъп до системната документация на Linux? Кажете ни вашето мнение в коментарите по-долу.

Публикациите се превеждат автоматично с google translate

Loading


Сподели