Linux help info man

What is the difference between «man» and «info» documentation?

Regarding man-pages and info help documentation: Why do two such similar sources of documentation exist?
Sometimes a man-page is available and the info is not; or vice-versa.
I haven’t yet latched on to the rhyme and reason behind it. Maybe there is a significant difference between them, but even if there is, why do they both exist? It seems like unnecessary doubling up.

Try doing info info and man info . man info shows colorful examples. I am more visual person, using the same color across makes me sleepy. The man syntax with a little color makes it understandable quickly.

@randominstanceOfLivingThing — on my machine, 20.04.1 i don’t see any colors with info xyz or info info . Any thing to tweak

3 Answers 3

Man pages are the UNIX traditional way of distributing documentation about programs. The term «man page» itself is short for «manual page», as they correspond to the pages of the printed manual; the man pages «sections» (1 for commands, 2 for system calls, etc.) correspond to sections in the full UNIX manual. Support is still there if you want to print a man page to paper, although this is rarely done these days, and the sheer number of man pages make it just impossible to bind them all into a single book.

In the early ’90s, the GNU project decided that «man» documentation system was outdated, and wrote the info command to replace it: info has basic hyperlinking features and a simpler markup language to use (compared to the «troff» system used for man pages). In addition, GNU advocates against the use of man pages at all and contends that complex software systems should have complete and comprehensive documentation rather than just a set of short man pages.

There are actually other documentation systems in use, besides man and info: GNOME and KDE have their own, HTML-based system, etc.

In the end, the form in which you get documentation depends on the internal policies of the project that provided the software in the first place — there is no globally accepted standard.

Источник

Документация Linux

Вместе с дистрибутивами GNU/Linux устанавливается большое число консольных утилит, выполняемых в Bash-оболочке. Кроме того, множество программ потом устанавливает сам пользователь. В связи с этим невозможно запомнить весь перечень команд с их параметрами. Поэтому для каждой программы должна иметься страница документации, так называемая man-страница. Здесь man – это сокращение от слова manual (руководство, пособие).

Доступ к этим страницам осуществляется с помощью одноименной программы man . В качестве аргумента ей передается имя команды, информацию о которой мы хотим получить. Например, man date или man cat .

Man-страница команды sleep

На скриншоте показана страница документации к утилите sleep , входящей в GNU/Linux. Страница открывается по команде man sleep и является одной из самых коротких. Здесь мы можем видеть всю структуру man-страницы, состоящей из следующих разделов:

  1. NAME. Имя команды, и кратко что она делает.
  2. SYNOPSIS. Варианты синтаксиса, т. е. способов записи, команды. Параметры без скобок являются обязательными. В квадратных скобках – необязательными (опциональными).
  3. DESCRIPTION. Подробное описание программы и ее ключей.
  4. AUTHOR. Разработчик программы.
  5. REPORTING BUGS. Куда сообщать об ошибках.
  6. COPYRIGHT. Авторские права на программу, лицензия, под которой она распространяется.
  7. SEE ALSO. Дополнительная информация.
Читайте также:  Приложения linux windows android

Данные разделы стандартны и характерны для всех man-страниц.

Обратите внимание, в первой строке мана пишется имя программы и в скобках ставится число. Так в примере выше написано SLEEP(1). Число обозначает раздел, к которому относится данная страница документации Linux. Пользовательские утилиты относятся к разделу под номером 1.

Если посмотреть документацию к программе apt-get , с помощью которой во многих дистрибутивах Linux устанавливается ПО, то там будет стоять число 8. К восьмому разделу относятся программы администрирования системы, то есть выполняемые с правами суперпользователя (root’а).

Man-страница команды apt-get

Большинство man-страниц достаточно длинные и не помещаются на одном экране. Поэтому пользуются горячими клавишами навигации по документации:

  • Стрелки вверх и вниз для построчной прокрутки.
  • Клавиши Page Up и Page Down для постраничной прокрутки.
  • Home и End перемещают в начало или конец страницы.
  • Нажатие q приводит к закрытию страницы документации.

Есть и другие клавиши управления.

В зависимости от дистрибутива часть страниц может быть переведена на русский язык. Однако большинство, как и почти вся документация в сфере IT, написаны на английском языке.

Документация Info

Info-руководство – другой вариант документации команд Linux. Описание команд в info менее формализовано и поэтому зачастую более понятно.

Команда вида info имя_программы откроет ту часть info-документации, где начинается описание указанной программы.

Info-страница команды yes

На скрине info-страница для утилиты yes .

Info-руководство – по-сути один большой гипертекстовый сборник, в котором можно перемещаться по ссылкам. Для этого надо установить курсор в подчеркнутую фразу, начинающуюся с * , и нажать Enter . В отличие от info-документации каждая man-страница является независимым документом.

С помощью клавиши u можно подняться на самый верхний уровень info-документации Linux. Клавиши n и p перемещают вниз и вверх от статьи к статье (должна быть включена английская раскладка клавиатуры). На изображении ниже показано начало самого верхнего уровня иерархии страниц info.

Корень руководства Info

Опция —help

У многих команд есть ключ —help , который позволяет быстро получить краткую справку. Информация выводится тут же в терминал, и остается видимой во время написания следующей команды. Нередко —help выдает русифицированную справку.

Помощь по ключу --help

Команда apropos

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

Допустим нам надо проверить, есть ли каком-то файле повторяющиеся строки. По английски «повторять, повторение» – repeat. Следовательно, команда поиска подходящей программы будет выглядеть так: apropos repeat .

Пример использования команды apropos

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

Читайте также:  Оболочки linux red hat

Утилита uniq

Примечание. Аналогично apropos’у работает утилита man с ключом -k .

Поиск с помощью man -k

Курс с ответами к заданиям и дополнительными уроками в PDF

Введение в Linux и Bash. Курс

Источник

Кратко о help, man и info

Зачастую, начинающий пользователь, не зная как выполнить какое-либо действие в Терминале, сразу задаёт вопрос (иногда довольно глупый) в Форуме. Особенно это свойственно тем, кто совсем недавно обратил свой взор на операционные системы, отличные от Windows.

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

В данном материале делается попытка дать начальные сведения по использованию справки и страниц man. (жду дополнений)

Практически у каждой команды Linux-системы есть (хотя бы и очень краткая) справочная информация. Чтобы её вызвать, достаточно запустить команду с аргументами -h или —help. Например, для команды ls:

$ ls --help Usage: ls [OPTION]. [FILE]. List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuSUX nor --sort. .

В большинстве команд при вызове её с аргументом —help выдается очень много информации. Вывод на экран можно разграничить по страницам с помощью:

Команда more самая популярная команда для вывода информации по страницам в каждой Unix системе. В Linux более популярная команда less — она имеет большую функциональность: позволяет передвигаться постранично вперед и назад, с помощью стрелок прокручивать текст, поддерживаются сочетания клавиш редактора vi для навигации и поиску по тексту. Также можно использовать команду card, которая позволяет выводить информацию сразу на принтер или сохранить в виде Postscript файл, что позволит позднее прсмотреть его с помощью утилиты evince или сконвертировать в PDF файл с помощью утилиты ps2pdf.

Многие команды имеют более расширенную версию «справки» — т.н. страницы man. Для вызова достаточно набрать:

Для поиска информации в базе данных man страниц по ключеву слову или нескольким символам существует команда apropos. На выходе apropos покажет страницы man сожержащие искомое слово:

$ apropose crontab /etc/anacrontab (5) [anacrontab] - configuration file for anacron

— apropos показывает секции и страницы man, где было найдено искомое слово.

Секции страниц man — это способ сгрупировать страницы man по темам. Например, страницы man из секции 1 — это «Запускаемые программы» или «команды shell».

Страницы man из секции 5 — это «Формат файлов и соглашения». Страницы man одинаковые на всех Linux системах, но могут немного отличаться на других Unix системах. Для получения представления секций на конкретной системе можно посмотреть страницы man на man:

Если указать номер сессии, то man выведет страницу этой секции. Если не указать номер секции, то man покажет страницы из первой найденной секции.

У комнады есть несколько аргументов, для выполнения разных задач. Например:

— показывает все страницы секций, в данном случае для crontab

— показывает страницы man из пятой секции для crontab

— используется программа more для возможности постраничного просмотра по crontab

— аналогично команде whatis

— аналогично команде apropos

Существует ещё команда для поиска в страницах man — whatis. Отличие её от apropos в том, что она показывает только описание страниц man относящиеся к искомому слову. После запуска команды apropos для команды route получим три разных страницы содержащие слово route:

$ apropos route NETLINK_ROUTE (7) - Linux IPv4 routing socket route (8) - show / manipulate the IP routing table traceroute6 (8) - traces path to a network host

Если же запустить whatis, то получим только 8-ю секцию страниц man для команды route:

$ whatis route route (8) - show / manipulate the IP routing table

В некоторых случаях разработчики помещают некоторую дополнительную информацию по описанию команд, устройств, форматов файлов и других компонентов Linux в информационную базу данных. Чтобы получить доступ к этой базе необходимо набрать info (для выхода из утилиты info используется q):

Читайте также:  Java jni linux so

При этом будет показана информация по команде ls. Можно перемещаться по информации с помощью клавиш нафигации (стрелки), а так же с помощью Page UP и Page Down. Файлы, которые использует такая информационная база данных, находится в директории /usr/share/info.

Источник

Difference between help, info and man command

I know that these command will help to get syntax and options for commands but my question is that how they differ from each other?

3 Answers 3

help is a built-in command in the bash shell (and that shell only) that documents some of the builtin commands and keywords of that shell. That’s an internal documentation system of that shell. Other shells have their own documentation system ( ksh93 has —help and —man options for its builtins, zsh has a run-help helper that extracts information from manuals in other formats). Other commands like vim have their own embedded documentation system.

man is a system-wide documentation system that provides short reference manuals (pages) for individual commands, API functions, concepts, configuration file syntax, file formats organised in sections (1 for user commands, 2 for system calls. ). That’s the traditional Unix documentation system.

info is another documentation system originating in the GNU project. It’s hypertext with links (predates the web). An info manual is like a digital book with a concept of table of contents and (searchable) index which helps locating the information.

There’s overlap between the 3. For instance, bash being part of the GNU project has both a man page and an info manual. The size of the manual makes the man system not as appropriate for bash though. However, the structure of the info manual and index is not very good in bash which makes it not as easy to look information in as in other info manuals like zsh ‘s. zsh manual being even bigger is split into several man pages and also has a good info manual with a very good index.

It should be noted that the info manual is generated from a texinfo format which is also used to generate HTML and printable (PDF/PS) versions. In the case of zsh though, the texinfo is generated from another format ( yodl ).

Источник

Оцените статью
Adblock
detector