Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

3 - Справка Linux - man

Лекция



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

На прошлой лекции мы рассмотрели загрузку операционной системы Linux. Мы уже знаем основные этапы, которые проходит компьютер вместе с операционной системой от момента нажатия на кнопку включения до момента регистрации в системе. Напомню, также, что работать мы будем в текстовом режиме, поэтому переключаемся на текстовую виртуальную консоль и регистрируемся в системе. После регистрации мы попадаем в командный интерпретатор или оболочку - bash. У оболочки очень много возможностей, пока достаточно понимать, что это среда которая принимает, обрабатывает и выдает результаты команд, которые мы посылаем операционной системе. Выглядит оболочка так как показано на рисунке 1.

3 - Справка Linux - man

Рисунок 1

То, что находится слева от курсора называется приглашением к вводу команд. Если приглашение заканчивается на символ $, то вы зарегистрированы в системе как обычный пользователь. Если приглашение заканчивается на#, то это значит, что команды будут выполнены от имени администратора (суперпользователя, “рута”). Давайте попробуем набрать несколько команд в оболочке и посмотреть на результаты.

Набираем команду date и нажимаем клавишу Enter. Вы увидите на экране текущие время и дату. Если ввести команду hostname, то вы получите имя вашего компьютера. Команда pwd покажет в какой директории мы находимся в текущий момент. По команде exit мы выйдем из оболочки и нам нужно будет регистрироваться снова (вводить имя пользователя и пароль).

Также хочу обратить внимание на клавишу Tab, которая позволяет дополнять команды, имена файлов и параметров. Например, наберите такое начало команды shut и нажмите на клавишу Tab. Видите shutавтоматически дополнилось до shutdown? Такое дополнение работает если есть только один вариант продолжения набранного куска команды. Если набрать, например, if и нажать Tab, то ничего не отобразится так как существует несколько команд начинающихся с if. Чтобы отобразить эти варианты нужно еще раз нажать наTab. Если вариантов будет много, будет запрос хотим ли мы смотреть все варианты. Не вводя никаких команд, нажмите два раза клавишу Tab и система спросит хотим ли мы посмотреть все команды? Таким образом можно узнать общее количество команд в системе (см. рисунок 2).

3 - Справка Linux - man

Рисунок 2

Как видно на рисунке система знает 2448 команд! И что их все нужно знать?! Конечно нет. Достаточно знать основные команды (около сотни) и знать где и как найти информацию об остальных. Прежде чем пойдем дальше давайте рассмотрим несколько команд для отображения информации. Вывести содержимое файла на экран позволяет команда cat.

igor@adm-ubuntu:~$ cat /etc/event.d/tty1

Результат:

# tty1 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.

start on stopped rc2
start on stopped rc3
start on stopped rc4
start on stopped rc5

stop on runlevel 0
stop on runlevel 1
stop on runlevel 6

respawn
exec /sbin/getty 38400 tty1

После выполнения этой команды на экране будет представлено содержимое файла. Удобна для небольших текстовых файлов, содержимое которых помещается на экран. Существует также команда tac (cat - наоборот), которая позволяет вывести содержимое файла наоборот:

igor@adm-ubuntu:~$ tac /etc/event.d/tty1
exec /sbin/getty 38400 tty1
respawn

stop on runlevel 6
stop on runlevel 1
stop on runlevel 0

start on stopped rc5
start on stopped rc4
start on stopped rc3
start on stopped rc2

# started until it is shut down again.
# This service maintains a getty on tty1 from the point the system is
#
# tty1 - getty

Команд  cat неудобна при выводе больших файлов, которые не помещаются на одном экране. Об этом говорит сайт https://intellect.icu . Поэтому существует также команда more. Эта команда выдает текст порциями, при нажатии на клавишу Enter - построчно, а при нажатии на клавишу пробел - постранично. Но на сегодняшний день есть более продвинутая команда - less.

less - это уже такой себе мини-браузер (просмотрщик, въювер) для отображения файлов с возможностью поиска и другими полезными функциями. Откройте любой текстовый файл, например /etc/bash.bashrc:

less /etc/bash.bashrc

Тест откроется во въювере less. Сразу же скажу: чтобы выйти из less нужно нажать на клавишу q . В less уже можно навигационными клавишами перемещаться по тексту (стрелки вверх-вниз, вправо-влево, PgUp, PgDown), осуществлять поиск текста, выполнять переходы по найденным словам и много другое. Чтобы выполнить поиск нужно находясь во въювере нажать на клавишу / или ? затем без пробела искомое слово и нажать клавишуEnter/искомое слово - поиск будет вестись вниз от текущего экрана, а ?искомое слово - вверх от текущего экрана. Если текст большой и искомых слов много или они разбросаны по всему тексу, то клавишами n и Nможно быстро переходить по найденным словам. n - перемещение вверх по тексту, N - перемещение вниз. Если находясь во въювере нажать на клавишу h то откроется справка программы. Справка откроется также с помощью въювера less, поэтому, чтобы закрыть справку нужно нажать клавишу q .

Что ж  теперь перейдем к команде man. Команда man позволяет отобразить справку обо всех существующих в системе командах. Отображает информацию с помощью въевера less, поэтому мы и остановилсь на нем подробнее. Наберите команду man man - получить справку о справке. А теперь нажмите клавишу h и вы увидите справку о команде less, потому, что с ее помощью выведен текст о команде man. Нажмите q, чтобы выйти из справки по less.

Справочная информация сгруппирована по разделам. Всего разделов 9. О них вы можете прочесть в справкеman man. В качестве разъяснения можно привести пример с командой и именем файла passwd. Если набрать команду man passwd, то будет отображена справка о команде passwd. Наберите в командной строке man passwd. В самом верху справки вы увидите надпись passwd(1). Цифра в скобках указывает, что данная информация относится к первому разделу (пользовательские команды). Пролистайте теперь в самый конец файла (раздел see also - смотрите также) и вы увидите там надпись passwd(5), которая говорит о том, что существует еще информация о passwd в пятом разделе справки. Выйдем из текущей справки (q) и наберем команду man 5 passwd (цифра 5 указывает на то, что справка должна быть отображена из пятого раздела. Пятый раздел описывает форматы файлов и в этой справке содержится информация не о команде passwd, которая позволяет изменить пароль пользователя, а о файле passwd в котором содержится информация о пользователях. Если искомое понятие содержится  в нескольких разделах, то по умолчанию будет выводится информация из раздела с меньшим номером.

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

NAME (название) - заголовок справки с кратким описанием.

SYNIPSIS (синтаксис) - синтаксис команд. Каждая команда может иметь опции (или ключи) и параметры. Опции изменяют поведение команды, а параметры это то с чем команда будет работать. Например, команда ls -l /home/-l - это ключ команды, который говорит ей отобразить дополнительную информацию о директориях, а/home/ - это передаваемый команде параметр, который показывает команде с какой директорией ей нужно выполнить операцию. Синтаксис показывает какие у команды есть ключи, как их можно компоновать друг с другом, какие параметры можно передавать команде. Нужно уметь читать синтаксис команд в справке man.

[-с|-w|-tz] - такая запись говорит о том, что ключи перечисленные через | несовместимы и не могут использоваться вместе. То есть в команде нельзя указать ключ -с и ключ -w или ключ -t. Должен быть указан какой-то один из них. Квадратные скобки в которых указаны ключи говорят о том, что ключи не есть обязательными. То есть эти ключи могут вообще ни использоваться в команде.

[-adhu7V] - такая запись говорит о том, что ключи также не обязательные (т.к. в квадратных скобках) и, что ключи совместимы, то есть могут использоваться в любой комбинации. Например, -ad, -a, -ahu, -h7V и т.д.

При указании ключей принято соглашение, что после одного знака “-” идут однобуквенные ключи, а после двух знаков “–” идет один ключ состоящий из одного слова. Очень часто однобуквенные ключи дублируются ключами-словами.Например, -p и –parents-v и –verbose, и т.д. Между ключами-словами обязательно должны быть пробелы, между однобуквенными ключами пробелов может и не быть. Упрощенно общий вид команды можно записать так:

Команда [-однобуквенная опция[ параметр]] [--опция-слово[ параметр]] [параметр]

DESCRIPTION (описание) - в этом разделе дано описание команды.

EXAMPLES (примеры) - полезный раздел в котором представлены практические примеры команд с наиболее часто употребляемыми ключами и параметрами.

OPTIONS (опции, ключи)  - в этом разделе кратко описывается назначение каждого ключа команды.

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

SEE ALSO (смотрите также) - в этом разделе указаны разделы справки по командам, файлам, которые связаны с изучаемой и рекомендуются также к просмотру.

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

Как еще можно получить справку в Linux? Существует также команда info, которая похожа на man, но появилась гораздо позже и имеет некоторые отличия в представлении информации. На команде infoостанавливаться не буду просто знайте, что есть и такой способ получения информации.

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

man -k network | grep configure

Результат:

ifconfig (8)         - configure a network interface
iwconfig (8)         - configure a wireless network interface
iwpriv (8)           - configure optionals (private) parameters of a wireless network interface

Таким образо мы нашли три команды, которые позволяют настраивать сетевые интерфейсы. О команде grep мы еще будем говорить, пока скажу, что в данном примере результаты команды man -k network будут переданы команде grep, которая отобразить только те результаты в которых встречается слово configure. Комбинируя таким образом два ключевых слова, можно в большинстве случаев найти нужную информацию. Например, man -k editor | grep text выдаст информацию о текстовых редакторах которые есть в системе. И т.д. Вместо командыman -k можно использовать команду apropos - они аналогичны.

Полезной может оказаться и команда man -f или ее аналог whatis. Ее целесообразно применять когда вы помните имя команды, но подзабыли, что именно она делает. Вот несколько примеров:

igor@adm-ubuntu:~$ man -f pwd
pwd (1)              - print name of current/working directory
igor@adm-ubuntu:~$ man -f ls
ls (1)               - list directory contents
igor@adm-ubuntu:~$ man -f grep
grep (1)             - print lines matching a pattern
igor@adm-ubuntu:~$ whatis mkdir
mkdir (1)            - make directories
igor@adm-ubuntu:~$ whatis rm
rm (1)               - remove files or directories

И последняя команда которую мы рассмотрим - это команда whereis. Эта команда позволяет показать где расположен исполняемый файл той или иной команды, а также месторасположение файла справки manуказанной команды. Пример:

igor@adm-ubuntu:~$ whereis rm
rm: /bin/rm /usr/share/man/man1/rm.1.gz

Здесь /bin/rm/ это исполняемый файл, а /usr/share/man1/rm.1.gz - это файл справки о команде rm.

Попробуйте самостоятельно определить для чего нужны команды ls, cd, mkdir, cp, mv, rm, rmdir. Попробуйте также найти команду которая отображает информацию о системе. И определить с каким ключем нужно выполнить эту команду, чтобы отобразить только версию ядра.

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

создано: 2014-09-13
обновлено: 2021-03-13
132572



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей



Комментарии


Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Операционная система LINUX

Термины: Операционная система LINUX