Как выйти из man linux

Обновлено: 05.07.2024

Подробно объясните команды справки Linux-help, --help, man, info

оглавление

  • Введение в команды справки Linux
  • команда help и параметр --help
  • команда человека
  • информационная команда

1. Введение в команды справки Linux

В системе Linux есть тысячи команд, и каждая команда имеет несколько или даже десятки параметров, указывающих на использование в различных сценариях.

Есть некоторые команды, которые нам нужно часто использовать в нашей повседневной работе. Даже если мы не запоминаем команды преднамеренно, они будут впечатлены практикой, доведенной до совершенства. Но как насчет незнакомых команд или незнакомых параметров знакомых команд?

Конечно, нам не нужно тратить много энергии на запоминание этих команд и параметров, просто используйте команды справки Linux правильно, и мы сможем быстро найти нужные команды и параметры.

Команды справки Linux в основном включают три:

  1. команда help и параметр --help
  2. команда человека
  3. информационная команда

Далее я расскажу об использовании и различиях этих трех команд.

Два, команда справки и параметр --help

2.1 команда помощи

Команда help может распечатать справочную информацию по нужной нам команде на консоли. Использование:

Например, если мы хотим просмотреть команды справки команд cd и mv, мы можем получить следующий вывод при использовании команды справки в приведенной выше форме:

 cd

 mv

Почему такая разница? Почему я не могу просмотреть справочную информацию о команде mv? Необходимо ввести "Встроенные команды"с участием"Внешняя команда"Концепция чего-либо

2.2 Встроенные команды и внешние команды

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

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

Используйте команду type, чтобы проверить, является ли команда встроенной или внешней командой.

Например, упомянутые выше команды cd и mv, давайте посмотрим, к какому типу команды они относятся.

cd

mv


Из приведенной выше информации мы обнаруживаем, что команда cd является встроенной командой, а команда mv - внешней командой. После многих попыток можно обнаружить, что команду справки в приведенной выше форме можно использовать только для запроса справочной информации встроенных команд.

Мы можем попробовать просмотреть справочный документ самой команды справки

 help

Нетрудно видеть, что только встроенная команда может использовать команду справки следующей формы для запроса файла справки.

2.3-параметр помощи

Если вы хотите использовать справку для запроса справочного документа внешней команды, приведенная выше форма не будет работать, но вы можете использовать следующую форму для запроса справочного документа внешней команды

** Следует отметить, что эти две формы помощи не полностью эквивалентны. ** Первый предназначен для просмотра справочного документа, выполнив встроенную команду справки, а второй - для отображения справочного документа команды запроса путем переноса справки по параметру после команды. Мы могли бы также попытаться запросить справочную документацию по внешней команде mv:

mv --help

Нетрудно обнаружить, что команда mv поддерживает параметр --help для отображения справочной информации по этой команде и выхода.

Три, команда человека

3.1 Справочная информация, предоставленная человеком

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

Например, мы хотим просмотреть справочную информацию по команде mv

man mv

На странице руководства представлена ​​информация о «имени», «сводке» и «введении» команды mv, а другая информация, такая как «информация об авторе» и «еще», не показана на рисунке. В частности:

название смысл
NAME Название команды и краткое описание
SYNOPSIS Сводка синтаксиса выполнения команды
DESCRIPTION Полное описание команды
OPTIONS Список всех доступных элементов параметров
COMMANDS Когда команда выполняется, команда, которая может быть выполнена в программе
FILES Некоторые файлы, на которые ссылается или связывает эта команда
SEE ALSO Другие примечания об этой команде
EXAMPLE Некоторые примеры, к которым вы можете обратиться
BUGS Есть ли связанные ошибки

Мы заметили, что в первой строке стоит «MV (1)». Что означает число в скобках? Фактически это классификация запрошенной информации.

цифровой Представление
1 Стандартные команды или исполняемые файлы, с которыми пользователи могут работать в среде оболочки
2 Функции и инструменты, вызываемые ядром системы
3 Часто используемые библиотечные функции
4 Файлы оборудования и описания оборудования и т. Д.
5 Файл конфигурации или формат файла
6 Игры и другие развлечения
7 Информация о соглашении и т. Д.
8 Команды управления доступны системным администраторам
9 Документы, относящиеся к ядру Linux

3.2 Основные операции на странице руководства

Самым большим преимуществом команды man перед командой help является то, что пользователь может выполнять такие операции, как перелистывание страниц и поиск на странице руководства посредством ключевого взаимодействия. Общие ключевые операции показаны ниже.

кнопка Характеристики
пробел Перевернуть страницу
/str Искать строку str в обратном направлении
?str С нетерпением жду строки str
n, N n - следующая найденная строка, N - предыдущая найденная строка
q Выйти из справочной страницы

В-четвертых, информационная команда

4.1 Справочная информация, предоставленная info

Функция команды info в основном аналогична функции команды man, которая может отображать соответствующую информацию и информацию о команде.

Отличие от команды man состоит в том, что, с одной стороны, команда info может получить более обширную справочную информацию, относящуюся к команде запроса; с другой стороны, информационная страница разделяет данные файла на параграфы и поддерживает их в виде «узлов» Вся страница страницы и разделенные абзацы соответствуют узлам, поэтому пользователи могут переключаться между узлами и легко читать содержимое каждого абзаца.

Взяв в качестве примера информацию о команде, мы вошли на страницу с информацией о команде.

Первый уровень: верхний узел, который отображает основную информацию о команде info иСправочная информация

 info page

Второй уровень: узел каталога первого уровня, который отображает подробное содержимое каталога первого уровня, который может содержать список каталогов второго уровня.

 info page

Третий уровень: узел каталога второго уровня: отображает подробное содержимое в каталоге второго уровня.

 info page

4.2 Основные операции на информационной странице

Информационная страница предоставляет интерактивные операции, такие как перелистывание страниц, переход по узлу и поиск.

кнопка Характеристики
пробел Листать вниз
Введите ключ Перейти к следующему узлу
P Перейти к предыдущему узлу
U Вернуться к предыдущему узлу
Введите ключ Переместите курсор к узлу следующего слоя и нажмите Enter, чтобы войти.
B Перейти к первому узлу текущей информационной страницы
E Перейти к последнему узлу текущей информационной страницы
/ Искать на информационной странице
Q Закрыть информационную страницу

Мой официальный аккаунт: всесторонний программист

Мои знания: разносторонний программист

Приветствуем ваше внимание и общение

Если вы считаете, что эта статья полезна для вас, не стесняйтесь, она понравится

Один из важных рефлексов, который должен развиться у каждого пользователя Linux - это поиск информации, если что-то идет не так. Но несмотря на тот факт, что мы живем в мире, связанном с поисковыми системами, вики и огромным количеством иформации на кончиках ваших пальцев, всегда хорошо иметь локальную информацию в своей системе. Это обеспечивает простой и быстрый доступ к информации, даже при отсутствии подключения к интернету. Кроме того, информации, найденной в интернете, не всегда можно доверять, в то время как в руководствах все изложено четко и последовательно. Философия Unix (и, по наследству, Linux) говорит о том, что система должна быть хорошо документирована. Поэтому каждая программа распространяется с соответствующей man-страницей. Хотя man-страницы имеются во всех операционных системах на базе Unix, но между ними имеются отличия, поэтому то, что работает в Linux, может не работать, например, в Solaris. Кроме того, стиль написания этих руководств очень краткий и непривычный для новичков, поэтому вам может быть понадобится прочитать страницу несколько раз, пока вы привыкнете к нему.

2. Часто используемые опции

man -a keyword
выводит все доступные для keyword man-страницы
man -f keyword
ищет и выводит краткое описание всех man-страниц, где имеются ссылки на keyword
man --warnings
включает предупреждения
man -I .
включает чувствительность к регистру
man -H[browser]
активирует вывод в HTML и просмотр в браузере, который определен в $BROWSER или определен по умолчанию во время компиляции (обычно lynx).

3. Использование man-страниц

Если вы используете один из популярных дистрибутивов, то man-страницы скорее всего уже установлены как часть ядра системы вместе такими важными вещами как shell или система init. Чтобы лучше понять, как работает man, просто введите команду man man. Именно так все и работает: если мне нужна man-страница для ls, я ввожу man ls. В сетевом сообществе хорошим тоном считается сначала прочитать руководство, прежде чем задавать вопросы на форумах или в каналах IRC, о чем ветераны вам обяхательно напомнят с помощью аббревиатуры "RTFM". Если вы не знаете, что она значит, посмотрите в Google. Такой порядок действий - сначала man-страница, затем Google/Wikipedia, потом (если вы не нашли решения) форумы и социальные сообщества, является частью культуры Linux/FOSS.

Так как большинство man-страниц состоят более чем из одной страницы, для вывода используется less, и страницы можно перелистывать с помощью клавиш PgUp и PgDown, или Space и Esc + V. Выйти из man-страницы можно в любое время с помощью клавиши "q". Детально использование less мы разберем как-нибудь в другой раз, если вы хотите сделать это самостоятельно, вы всегда можете набрать man less. Поиск в man-странице вызывается с помощью клавишы "/", каждое последующее найденное вхождение можно просмотреть с помощью клавишы "n". Если вы знаете, что вам нужно, но не знаете точное название man-страницы, вам поможет apropos(1). Вы наверное обратили внимание на цифру в скобках после названия команды. Она задает категорию, к которой принадлежит команда. Для лучшей организации, и чтобы избежать дублирования, man-страницы делятся по категориям. Например, printf в Linux может принадлежать категориям 1, 1p, 3 и 3p. Она является как функцией библиотеки C, так и пользовательской командой, частью coreutils, которая часто используется в скриптах оболочки. В Linux категории, после номера которых следует "p", предназначены для POSIX-программистов. В таких случаях вы можете задать требуемую категорию, вставив ее номер между "man" и командой: man 3 printf. Ниже представлены категории, как они выглядят в современных системах Linux.

1 - исполняемые программы и команды оболочки;
2 - системные вызовы;
3 - библиотечные вызовы;
4 - файлы устройств (обычно расположены в /dev);
5 - форматы файлов;
6 - игры;
7 - макропакеты и соглашения;
8 - программы системного администрирования;
9 - процедуры ядра

Как уже говорилось ранее, система man была унаследована от старого Unix. С другой стороны, GNU предложил систему info, которая служит тем же целям, но имеет полезное нововведение, а именно использование гипертекстовых ссылок для перехода между страницами, аналогично тому, как это происходит в веб-браузерах. Так как OpenSolaris и BSD также используют программное обеспечение GNU (gawk, gcc, emacs. ), скорее всего на них тоже доступны некоторые страницы info. Познакомиться ближе с этой системой можно с помощью команды info info

4. Упражнения

1. Почему, как вы думаете, имеется деление на раздел 1 и 1p, или 3 и 3p?

2. Сделайте небольшое исследование и выясните различия в категориях между Linux и другими свободными системами на базе Unix.

3. Чтобы вы сделали, если вам нужно найти man-страницу, но apropos недоступен? Подсказка: man manpage

4. Найдите другую команду, которая встречается сразу в нескольких категориях.

Работа в командной строке Linux

Kомандный интерпретатор (или командная оболочка) – это программа, принимающая и выполняющая программы. Командный интерпретатор также поддерживает конструкции программирования, позволяя составлять сложные команды из более простых. Эти сложные команды, или сценарии можно сохранять в виде файлов, которые могут становиться новыми самостоятельными командами. В действительности многие команды в обычной Linux-системе являются сценариями. Мы рассмотрим командный интерпретатор bash – это один из нескольких интерпретаторов, доступных в Linux.

Для ввода данных и вывода результатов интерпретаторы используют три стандартных потока ввода/вывода:

  1. stdin – стандартный поток ввода (standard input stream), обеспечивающий ввод для команд.
  2. stdout – стандартный поток вывода (standard output stream), обеспечивающий отображение результатов выполнения команд.
  3. stderr – стандартный поток ошибок (standard error stream), обеспечивающий отображение ошибок, возникающих при выполнении команд.

При помощи потоков ввода обеспечивается ввод данных для команд (обычно с клавиатуры). Потоки вывода отображают текстовые символы, которые обычно выводятся на экран.

Команды в ОС Linux состоят из имени, опций и параметров. Некоторые команды не имеют ни опций, ни параметров, некоторые имеют и то, и другое, а некоторые – только опции или только параметры.

Команды

Команда echo выводит на экран свои аргументы, как показано в примере ниже

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

Другими словами, если строка заключена в кавычки, то все дополнительные символы-разделители сохраняются, и вся строка воспринимается как один маркер. Чтобы использовать кавычки внутри кавычек необходимо использовать символ \» как показано в последнем примере.

По ходу использования операционной системы Linux вам часто будет требоваться информация о том, что делает та или иная команда или системный вызов, какие у них параметры и опции, для чего предназначены некоторые системные файлы, каков их формат и т.д. Получить эту информацию можно при помощи утилиты man :

где имя – это имя интересующей вас команды, утилиты, системного вызова, библиотечной функции или файла.

чтобы выйти из man, нажмите клавишу «q».

Иногда имена команд интерпретатора и системных вызовов или какие-либо еще имена совпадают. Тогда чтобы найти интересующую вас информацию, необходимо задать утилите man категорию, к которой относится эта информация (номер раздела). Деление информации по категориям может слегка отличаться от одной версии UNIX к другой. В Linux, например, принято следующее разделение:

  1. Исполняемые файлы или команды интерпретатора.
  2. Системные вызовы.
  3. Библиотечные функции.
  4. Специальные файлы (обычно файлы устройств).
  5. Формат системных файлов и принятые соглашения.
  6. Игры (обычно отсутствуют).
  7. Макропакеты и утилиты – такие как сам man.
  8. Команды системного администратора.
  9. Подпрограммы ядра (нестандартный раздел).

Если вы знаете раздел, к которому относится информация, то утилиту man можно вызвать в Linux с дополнительным параметром

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

Директории. Команды pwd, ls, cd

Каждая выполняемая программа «работает» в строго определённой директории файловой системы. Такая директория называется текущей директорией, можно представлять, что программа во время работы «находится» именно в этой директории, это её «рабочее место». В зависимости от текущей директория может меняться поведение программы: зачастую программа будет по умолчанию работать с файлами, расположенными именно в текущей директория — до них она «дотянется» в первую очередь. Текущая директория есть у любой программы, в том числе и у командной оболочки пользователя. Поскольку взаимодействие пользователя с системой обязательно опосредовано командной оболочкой, можно говорить о том, что пользователь «находится» в той директория, которая в данный момент является текущей директорией его командной оболочки.

Все команды, отдаваемые пользователем при помощи bash , наследуют текущую директорию bash , т. е. «работают» в той же директория. По этой причине пользователю важно знать текущую директория bash . Для этого служит утилита pwd :

Команда pwd возвращает полный путь текущей директории bash . В данном случае текущей является директория «/home/user».

Утилиты, которые мы рассмотрим далее, по умолчанию читают и создают файлы в текущей директории.

Для вывода содержимого текущей директории испольузется команда ls :

Если указать опцию -a , можно будет увидеть все файлы, включая скрытые (имена которых начинаются с точки).

Первая ссылка указывает на текущую папку (.), вторая (..) указывает на папку уровнем выше. Это открывает еще более широкие возможности для навигации по каталогам.

После самой команды ls в качестве ее аргумента можно указать один или более файлов или директорий. Если указать имя файла, то команда ls выведет информацию только об этом файле. А если указать название директории, ls покажет все ее содержимое. Опция -l команды ls бывает очень полезной если вы хотите кроме имен файлов узнать более подробную информацию о них (права на файл, имя владельца, время последнего изменения файла и его размер). В следующем примере показано применение опции -l для вывода информации о файлах хранящихся в директории /usr

Действие опции -R противоположно действию -d . Она позволяет выводить информацию о файлах находящихся в директории рекурсивно. Сначала показывается содержимое директории верхнего уровня, потом по очереди содержимое всех поддиректорий и так далее. Вывод этой команды может быть достаточно объемным, поэтому мы не приводим ее пример, но вы можете попробовать сделать это самостоятельно, набрав в командной строке ls -R или ls -Rl .

Команда cd

Для смены текущей директории командного интерпретатора можно воспользоваться командой cd . Для этого необходимо набрать команду в виде

где <имя директории> – полное или относительное имя директории, которую вы хотите сделать текущей. Команда cd без параметров сделает текущей директорией домашнюю директорию пользователя.

В операционной системе Linux может быть несколько видов путей к файлу:

  1. Полный, абсолютный путь linux от корня файловой системы — начинается от корня «/» и описывает весь путь к файлу. Например: «/home/user/myfile»
  2. Относительный путь linux — это путь к файлу относительно текущей папки. Например (для файла находящегося в родительской папке): «../myfile».
  3. Путь относительно домашний папки текущего пользователя — путь в файловой системе, только не от корня, а от папки текущего пользователя. Чтобы задать путь подобным образом он должен начинаться с «

Отделить путь к файлу от его имени можно с помощью команд dirname и basename соответственно:

Заметим, что для «somefile» и «./somefile» dirname выдаёт одинаковый результат: «.», что понятно: как было сказано выше, эти формы пути совершенно эквивалентны, а при автоматической обработке результатов dirname гораздо лучше получить «.», чем пустую строку.

Команда mkdir

Для создания новой поддиректории используется команда mkdir . В простейшем виде команда выглядит следующим образом:

По умолчанию команда mkdir не может создать вложенной структуры директорий. Поэтому, если вам нужно создать несколько вложенных одна в другую директорий (my/super/dir), то вам придется три раза поочередно вызывать эту команду:

Упростить эту операцию можно добавив опцию -p к команде mkdir . Эта опция позволяет создавать вложенную структуру директорий:

Команда cat

Команда cat может быт использована для просмотра содержимого небольшого текстового файла на экране. Если набрать ее в виде

то на экран будет выдано все его содержимое.

Не пытайтесь рассматривать на экране содержимое директорий – все равно не получится. Не пытайтесь просматривать содержимое неизвестных файлов, особенно если вы не знаете, текстовый он или бинарный. Вывод на экран бинарного файла может привести к непредсказуемому поведению терминала.

Если даже ваш файл и текстовый, но большой, то все равно вы увидите только его последнюю страницу. Большой текстовый файл удобнее рассматривать с помощью утилиты more :

Если мы в качестве параметров для команды cat зададим не одно имя, а имена нескольких файлов

то система выдаст на экран их содержимое в указанном порядке.

Перенаправление ввода-вывода

Если имена входных файлов для команды cat не заданы, то она будет использовать в качестве входных данных информацию, которая вводится с клавиатуры, до тех пор, пока вы не наберете признак окончания ввода – комбинацию клавиш <CTRL> и <d>.

Таким образом, команда

позволяет создать новый текстовый файл с именем «новый файл» и содержимым, которое пользователь введет с клавиатуры. У команды cat существует множество различных опций. Посмотреть ее полное описание можно в UNIX Manual.

файл list.txt будет содержать результат работы обеих запусков команды ls .

Shell скрипты

Команды исполняемые в bash таккже можно записать в файл и запускать на исполнение. Для этого нужно создать файл (как правило с расширением .sh, например script.sh), первой строкой указать интерпретатор который будет исполнять команды, в нашем случае это

и далее поместить исполняемые команды.

чтобы файл можно было запускать, установим ему атрибут исполнения при помощи команды chmod (будет рассмотрена на следующем занятии):

и далее запустим

В результате работы скрипта на экран сначала будет выведена текущая директория, а потом ее содержимое.

Чтобы программа, вызывающая скрипт могла проанализировать результат его исполнения, существует такое понятие как код возврата, которое доступно вызывающей программе.

Нулевой код возврата означает что вызываемая команда (или скрипт) отработали корректно. Попробуем вывести содержимое несуществующей директории:

Как мы видим, в результате команда ls вернула код ошибки 1.

Когда работа сценария завершается командой exit без параметров, то код возврата сценария определяется кодом возврата последней исполненной командой.

Редактор vim

Vim (сокр. от Vi Improved, произносится Вим) — текстовый редактор, созданный на основе более старого Vi. Ныне это один из мощнейших текстовых редакторов с полной свободой настройки и автоматизации.

Режимы работы

Для того, чтобы открыть какой-то файл или создать новый надо выполнить команду:

Подсказка терминала на портативном компьютере Linux.

Fatmawati Achmad Zaenuri/Shutterstock

Все, что вам нужно знать о Linux, находится на его страницах руководства. Например, вы можете найти команду для выполнения задачи, даже если не знаете, как она называется. Но как найти справочные страницы? Вот несколько хитростей.

Встроенное руководство по Linux

Есть старая (из золотой эры Unix) Linux-шутка о том, что единственная команда, которую вам нужно знать, - это man , системная точка входа в руководство пользователя. В этом есть доля правды, но даже man поначалу может сбивать с толку. Или, точнее, поиск нужной информации может сбивать с толку.

Вы когда-нибудь знали, что хотите сделать, но не знали имени команды, которая могла бы выполнить задачу? Мы, наверное, все там были. Это похоже на попытку найти слово в словаре, когда вы его не знаете.

Итак, как вы можете найти то, что ищете? Что ж, есть способы обойти это затруднительное положение с man .

Цифры - еще одна проблема для новичков. Что это такое и что они означают? В документации и в Интернете можно встретить такие вещи, как man (2) или man (5) . Вы увидите ссылки на команды с номерами, например mount (2) и mount (8) . Разумеется, не может быть более одной команды mount , верно? Как мы увидим, цифры важны и относительно просты.

Говоря о простом, поиск в man довольно прост, если вы знаете, как это делать. На самом деле, есть несколько изящных способов поиска и навигации в man . Давай зажжем и посмотрим!

Как открыть руководство

Чтобы использовать man , введите в командной строке man , затем пробел и команду Linux. man открывает руководство по Linux на «странице руководства», описывающей эту команду - если, конечно, он может ее найти.

Давайте наберем следующее и посмотрим, что man говорит о man :


Откроется страница руководства для man .


Как видите, это страница man (1) .

Следуйте этим советам для навигации по странице:

  • Чтобы перемещаться по странице руководства по одной строке за раз: Воспользуйтесь колесом прокрутки мыши или клавишами со стрелками вверх и вниз и Enter.
  • Чтобы перемещаться по странице руководства по одному экрану за раз: Нажмите клавишу пробела и клавиши PgDn и PgUp.
  • Чтобы перейти непосредственно к верхней или нижней части справочной страницы: Нажмите клавиши "Домой" и "Завершить".

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

Чтобы выйти из man , просто нажмите Q.

Анатомия мужчины Пейдж

Вверху страницы вы видите заголовки «Имя» и «Сводка». Существует соглашение о компоновке страниц руководства. Существуют страницы руководства для команд, программ и функций программирования (библиотечных процедур). Вы не увидите все эти заголовки на каждой странице руководства, потому что некоторые из них применимы только к определенным типам команд.

Вот некоторые из заголовков, которые вы можете увидеть:

Мужчина Разделы

Если вы прокрутите вниз пару страниц, вы увидите список разделов в руководстве.


  1. Общие команды: Команды, которые вы используете в командной строке.
  2. Системные вызовы: Функции ядра, которые может вызывать программа.
  3. Функции библиотеки: Программы-функции могут вызывать библиотеки кода (в основном стандарт C).
  4. Специальные файлы: Обычно устройства, например, находящиеся в / dev, и их драйверы.
  5. Форматы файлов и соглашения: Formats for files, such as the passwd , cron table, and tar archive files.
  6. Игры: Описание команд, таких как fortune , которые отображают цитаты из базы данных при их запуске.
  7. Разное: Описание таких вещей, как inodes, параметры загрузки и сам man .
  8. Системное администрирование: Команды и демоны обычно зарезервированы для работы root .
  9. Подпрограммы ядра: Информация, относящаяся к внутренней работе ядра. Сюда входят функциональные интерфейсы и переменные, полезные, например, программистам, которые пишут драйверы устройств. В большинстве систем этот раздел не установлен.

Когда вы видите команду, за которой следует номер, это относится к описанию этой команды в этом разделе руководства. Например, man (1) относится к записи в первом разделе руководства, описывающем команду man .

На изображении выше вы видите ссылку на man (7) . Это означает, что дополнительная информация о man находится в другом разделе. Когда мы впервые открыли справочную страницу, она отобразила man (1) . Если вы наберете только man без номера раздела, man выполнит поиск по всем разделам по порядку в поисках записи для введенной вами команды. Конечно, man (1) был обнаружен раньше, чем man (7) .

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

Например, мы вводим следующее, чтобы открыть запись для man в седьмом разделе:


Руководство открывается для человека в разделе семь.


Эта страница руководства содержит инструкции по написанию страниц руководства. В нем описывается формат файла и макросы, которые вы можете использовать для выполнения некоторых работ за вас. На странице man (1) в разделе 1, который мы рассмотрели ранее, описано, как использовать сам man .

Как найти записи в разделах

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

Вы можете легко узнать, какие разделы руководства содержат записи для команды. Каждая страница руководства имеет заголовок и краткое описание. Параметр -f (whatis) выполняет поиск по заголовкам страниц и возвращает список совпадений.

В этом примере мы набираем следующее:


Две страницы руководства для man перечислены вместе с номерами разделов и краткими описаниями. Однако будьте осторожны - некоторые записи имеют одинаковое имя, но описывают разные команды и функции.

Например, набираем следующее:


Похоже, что для printf были обнаружены две записи: первая - в первом разделе, а другая - в третьем. Однако это разные команды. На странице руководства в первом разделе описана команда командной строки printf , которая форматирует вывод в окне терминала. На странице руководства в третьем разделе описывается семейство библиотечных функций printf на языке программирования C.

Также можно выполнять поиск по кратким описаниям и заголовкам страниц. Для этого вы используете параметр -k (apropos). Это также будет соответствовать вхождению поискового запроса внутри других, более длинных слов.


Многие из этих команд описаны на одних и тех же нескольких страницах руководства, потому что их основные функции в основном одинаковы. На странице руководства для vprintf описаны функции 10 команд, перечисленных на изображении выше.

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

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

Для этого набираем следующее:

В

Поскольку мы заключили слово «пользователь» в одинарные кавычки и добавили пробел в конце, он найдет совпадения только для «пользователь», а не «пользователи». Быстрый просмотр результатов поиска показывает, что вероятным кандидатом является passwd .

Поскольку это справочная страница раздела 1, и нам не нужно указывать номер раздела в команде, мы вводим следующее:

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


Чтобы узнать все, что нужно знать о подсчете слов, мы набираем эту команду:

Говоря о wc , мы также можем использовать параметр -k (apropos) с одной точкой ( . ) в качестве цели поиска, которая будет соответствовать всему. Если мы передадим это через wc и воспользуемся параметром -l (lines), он сообщит нам, сколько страниц руководства имеется на компьютере.

Чтобы сделать все это, мы набираем следующую команду:


На этом компьютере с Ubuntu 6706 справочных страниц, но не удивляйтесь, если их количество будет другим. Он может варьироваться в зависимости от того, какие программные пакеты и утилиты установлены на вашем компьютере и какие страницы руководства были предварительно установлены.

Поиск на мужской странице

Вы также можете искать вперед или назад от вашего текущего положения на странице руководства.

В этом примере мы вводим следующее, чтобы открыть страницу руководства по команде history :


Для поиска вперед мы нажимаем косую черту ( / ), а затем вводим слово «событие». Цель поиска появляется в нижней части окна терминала, и мы нажимаем Enter, чтобы начать поиск.


В окне отображается первый результат всех найденных совпадений, и они выделяются.


Нажмите «n», чтобы перейти от результата к результату в нижней части страницы. Для поиска в обратном направлении по странице руководства нажмите «N»; это вернет вас в начало страницы.

Чтобы включить или выключить выделение, нажмите Esc + U.

Если вы находитесь в нижней части страницы руководства и хотите выполнить поиск вверх, нажмите вопросительный знак (?), А затем введите поисковый запрос. Мы искали «вход».


Опять же, любые совпадающие результаты выделяются.


Для поиска следующего совпадающего результата нажмите «n» для перехода к началу страницы руководства. Нажмите «N», чтобы перейти к предыдущему результату сопоставления и перейти к концу страницы руководства.

Есть еще один способ поиска на странице руководства. Он скрывает все строки, которые не соответствуют вашему поисковому запросу, поэтому лучше всего использовать номера строк с этим методом.

Если мы введем «-N» и нажмем Enter, мы сможем увидеть номера строк на странице руководства.


Мы нажимаем амперсанд (&), вводим поисковый запрос (число), а затем нажимаем Enter.


Отображаются только строки, содержащие наш поисковый запрос.


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

Чтобы снова увидеть все строки, мы нажимаем амперсанд (&), а затем нажимаем Enter.


Мы набираем «292», а затем «g», чтобы перейти к этой строке.


Как только мы набираем «g», мы попадаем в строку 292 (поэтому «g» не отображается на изображении выше). Строка 292 отображается в верхней части окна терминала.


Вы можете нажать «-n» и нажать Enter, чтобы удалить номера строк.

Прочтите сказочное руководство

На страницах руководства есть много информации. Даже с командами, которые, как вы думаете, вам хорошо знакомы, можно с уверенностью сказать, что есть и другие варианты, о которых вы никогда не слышали.

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

Читайте также: