В предыдущей статье, мы рассмотрели основные команды, которые полезно знать Начинающему Линуксоиду, личности которая осваивается с ОС ГНУ/Линукс по мере своих потребностей и познаний. В нынешней статьей пройдемся по третьей части основных и общих знаний по командной строке. После четвертой статьи, мы прейдем к направленным знаниям, которые имеют свое направление применения, о чем тоже будет освещено в следующих статьях. В том числе, напоминаю, что полезно читать две предыдущие статьи про внутренние команды командной оболочки Баш и основные команды командной строки прежде, чем читать данную статью.
Введение.
Для начала отмечу, что у всех команд есть справочная информация, которую можно найти в интернете или в самом компьютере. В силу убеждений западнократической системы, что мол без бабруйского языка никак, у народа пошла в свое время волна популизма, как в общем-то всегда бывает с пропагандой, поэтому нет ничего удивительного, что среди линуксоидов до сих пор есть такие «уверенные» и убежденные во всемогуществе английского «языка», который никогда раньше не существовал, т.к. является искусственным языком образованным из старой славянской формы языков, поэтому имеет много общего в своей старой форме. В том числе у бритов, которые в свое время брились в отличие от славян из-за чего их прозвали бритами, ибо тотальной необходимости всенародно брить бороду у нас не было, ее ввел Петр «1» в качестве подражания западу, в то время Европе, что сказалось не сильно хорошо на нас самих. Однако, история об этом умалчивает, т.к. немало была подправлена Европейцами, в том числе немцами. Также, никто якобы не в курсе того, что английский «язык» является искусственным обрезком и обритостью славянского языка и азбуки, откуда позаимствовано не мало букв, разумеется перевернутых в обратную сторону. А нам, подправили азбуку в алфавит кирилический, что само собою вычеркнуло буквы в их исконном писании на письме. Полагаю, будет время, когда еще при нас раскроется вся эта перепись истории и множество интересных моментов. А пока что, скажу что, этот недоязык отсекает любую форму понимания и соприкосновения со всем, что имели сами участники созидания. Благодаря чему, мы учась и осваиваясь в свое время становимся не участниками своего дела, а исполнителями. Это плохое качество, т.к. у нас в таком движении нет возможности вносить вклад в дальнейшее развитие собственных возможностей и возможностей человечества и общества в целом. Поэтому приятно видеть, сознательных и идущих к этому людей, которые пишут на родном языке, нужное понимание и развитие, в том числе справочную информацию, т.к. это дает нам силы и понимание наших возможностей, нашего выбора. Так что, лично я буду рад, когда западнократическая система придет к нормальному упадку, т.к. в этом движении ей будет время подумать об собственных ошибках и ошибочности своего пути «саморазрушения и самоупадка», в том числе у них не будет сил занимать своими плохими делами по отношению к человечеству и обществу Земли. Это будет хорошим временем. Однако, пока мы еще идем к этому знаменательному моменту, стоит помнить, что нормальным отношением к своей деятельности — это описывать на своем родном языке то, что применяете и чему требуется научиться, чтобы это применять, называя это понятными для нас с вами языке.
Поэтому моя рекомендация по данной теме — всегда ищите справку, руководство, помощь, книги на родном языке. Или ищите их на русском языке, т.к. несмотря на все огрубления наш имеет устойчивую связь со своими корнями и родным миром. Так что в этом случае, у вас, всегда будет возможность понять то, что не получается на родном языке. Т.к. мой родной язык всегда хранит связь с миром, потому что это язык людей мира, которым важно взаимопонимание. В наше время, могу сказать, что есть сознательные люди которые несмотря на свои недостатки и заражения недоязыком, смогли написать свою помощь на родном языке другим для самообразования и самопознания ОС ГНУ/Линукс. Так что, не ленитесь искать информацию для самих себя, это вам в прок будет.
Справка, помощь, руководство.
Для начала отмечу, что у всех команд или большинства есть возможность получить краткую справочную информацию введя, следующим образом.
1 |
<имя команды> --help |
Этот параметр аналогичен внутренней команде Баш «help«, однако работает только для внешних команд. Это своего рода дополнение по отношению к внешним командам для командной оболочки Баш, в том числе для других командных оболочек, т.к. является внутренним параметром внешней команды.
Однако, это не единственный способ получения справочной информации в командной строке. Т.к. есть несколько команд, которые помогают в поиске небольшой информации по командам и их параметрам. Например, следующая команда, дает краткую справку о любой внешней команде.
1 |
whatis <имя команды> |
Если команда является внутренней или ее нету в списке, что на это выйдет сообщение: «ничего подходящего не найдено». Однако, это по сути напоминалка о том, каков смысл применения команды, если запамятовали, так что лучше применять ранее обозначенный параметр. Например, ниже, приведена разница между обоими способами получения справки по команде.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 |
andryuhan@Linuxoid-komp ~ $ ls --help Использование: ls [КЛЮЧ]… [ФАЙЛ]… Выдаёт информацию о ФАЙЛАХ (по умолчанию о текущем каталоге). Сортирует в алфавитном порядке, если не задан ни --sort, ни один из ключей -cftuvSUX. Аргументы, обязательные для длинных ключей, обязательны и для коротких. -a, --all не скрывать файлы начинающиеся с . -A, --almost-all не выдавать подразумеваемые . и .. --author вместе с -l, печатать автора каждого файла -b, --escape печатать экранирующие последовательности в стиле С для не графических символов --block-size=РАЗМЕР использовать блоки указанного РАЗМЕРА; например, «---block-size=M» выводит размеры в единицах, равных 1048576 байтам; см. формат РАЗМЕРА далее. -B, --ignore-backups не выдавать файлы, оканчивающиеся на ~ -c с -lt: сортировать и показывать по ctime (времени последнего изменения файла); с -l: показывать ctime и сортировать по имени; иначе: сортировать по ctime, сначала самые новые -C выдавать список в несколько колонок --color[=КОГДА] расцвечивать вывод; КОГДА может быть «always» (по умолчанию, если не указано), «auto» или «never». Подробней см. ниже -d, --directory выдавать имена каталогов, а не их содержимое -D, --dired генерировать вывод для режима Emacs dired -f не сортировать, включает -aU, выключает -ls --color -F, --classify добавлять к имени файла индикатор (один из */=>@|) --file-type аналогично, но не добавлять «*» --format=СЛОВО across -x, commas -m, horizontal -x, long -l, single-column -1, verbose -l, vertical -C --full-time синоним -l --time-style=full-iso -g как -l, но не выводить владельца --group-directories-first группировать каталоги раньше файлов; может дополняться ключом --sort, но любое использование --sort=none (-U) выключает группировку -G, --no-group в длинном формате не печатать имена групп -h, --human-readable c -l и/или -s печатать размеры в удобном для человека виде (например, 1K 234M 2G) --si то же, но использовать степень 1000, а не 1024 -H, --dereference-command-line следовать по символьным ссылкам в командной строке --dereference-command-line-symlink-to-dir следовать по всем символьным ссылкам в командной строке, которые указывают на каталог --hide=ШАБЛОН не показывать записи, соответствующие ШАБЛОНУ оболочки (отменяется ключами -a или -A) --indicator-style=СТИЛЬ добавлять к именам элементов индикатор с указанным СТИЛЕМ: none (по умолчанию), slash (-p), file-type (--file-type), classify (-F) -i, --inode показывать индекс каждого файла -I, --ignore=ШАБЛОН не показывать записи, соответствующие ШАБЛОНУ оболочки -k, --kibibytes по умолчанию использовать блоки по 1024 байта при показе использования диска -l использовать широкий формат -L, --dereference показывая информацию для символьной ссылки, показывать информацию о файле, на который ссылка ссылается -m выдавать список на всю ширину через запятую -n, --numeric-uid-gid как -l, но выдавать числовые UID и GID -N, --literal печатать имена как есть (не обрабатывать, например, управляющие символы) -o как -l, но не выводить информацию о группе -p, --indicator-style=slash добавлять индикатор / к каталогам -q, --hide-control-chars выводить ? вместо непечатных символов --show-control-chars показывать непечатные символы (по умолчанию, если программа не «ls» и вывод не на терминал). -Q, --quote-name заключать имя записей в кавычки --quoting-style=ТИП использовать ТИП заключения в кавычки: literal, locale, shell, shell-always, shell-escape, shell-escape-always, c, escape -r, --reverse обратный порядок сортировки -R, --recursive рекурсивно показывать каталоги -s, --size печатать размер каждого файла в блоках -S сортировать по размеру файла, большие сначала --sort=СЛОВО сортировать по СЛОВУ, а не по имени: none (без сортировки) -U, size (размер) -S, time (время) -t, version (версия) -v, extension (расширение) -X --time=СЛОВО с ключом -l, показывать вместо времени изменения время, заданное СЛОВОМ: atime, access, use (-u), ctime, status (-c); если --sort=time, использовать указанное время в качестве ключа сортировки --time-style=СТИЛЬ с -l, показывать время используя СТИЛЬ: full-iso, long-iso, iso, locale, +ФОРМАТ; ФОРМАТ интерпретируется как в «date»; если ФОРМАТ — это ФОРМАТ1<перевод-строки>ФОРМАТ2, то ФОРМАТ1 применяется к старым файлам, а ФОРМАТ2 к новым; если к СТИЛЮ добавлен префикс «posix-», то он действует только в локали, отличной от POSIX -t сортировать по времени изменения, сначала самые новые -T, --tabsize=РАЗМЕР использовать табуляцию указанного РАЗМЕРА, а не 8 -u с -lt: сортировать и показывать время доступа; c -l: показывать время доступа и сортировать по имени; иначе сортировать по времени доступа, сначала самые новые -U не сортировать; выводить в соответствии с физическим расположением в каталоге -v сортировать по номерам (версии) в текстовом представлении -w, --width=ЧИСЛО устанавливает ширину вывода равной ЧИСЛО. 0 означает отсутствие ограничения. -x перечислять по строкам, а не по столбцам -X сортировать по расширению в алфавитном порядке -Z, --context печатать любой контекст безопасности каждого файла -1 перечислять по одному файлу на строке. Символ «\n» не учитывается, если указан -q или -b --help показать эту справку и выйти --version показать информацию о версии и выйти РАЗМЕР задаётся целым числом и необязательной единицей изменения (пример: 10K это 10*1024). Единицы изменения: K, M, G, T, P, E, Z, Y (степень 1024) или KB, MB, … (степень 1000). Использование цветов для различения типов файла по умолчанию выключено и с помощью --color=never. С --color=auto, ls выдаёт цветовые коды только когда стандартный вывод подключён к терминалу. Переменная окружения LS_COLORS служит для изменения значений. Для её установки используйте команду dircolors. Коды выхода: 0 всё отлично, 1 небольшие проблемы (например, недоступен подкаталог), 2 серьёзная проблема (например, недоступен аргумент командной строки). Оперативная справка GNU coreutils: <http://www.gnu.org/software/coreutils/> Об ошибках в переводе сообщений «ls» сообщайте по адресу <gnu@mx.ru> Полная документация: <http://www.gnu.org/software/coreutils/ls> или доступная локально: info '(coreutils) ls invocation' andryuhan@Linuxoid-komp ~ $ whatis ls ls (1) - list directory contents andryuhan@Linuxoid-komp ~ $ |
Есть команда «info«, она дает справочную информацию в виде страниц с псевдографическим интерфейсом, которая якобы удобней другой команды «man«. Однако, популярности и применения у нас в России она не снискала, поэтому о ней подробно писать смысла не вижу. Т.к. в большинстве случаев нам достаточно команды «man«, которая к тому же удобней, чем «info«, т.к. ее страницы можно выводить в файл или сделанными для этого скриптами в интернет переводчик с получение к себе на комп перевода на русский язык. К тому же, man-страницы есть на русском языке, как их получить и поставить у себя на компьютере написано здесь. Однако, не будем сильно отвлекаться, полагаю вы уже опробовали. Так что, команду в простом варианте стоит применить так (info в данном случае, аналогично). Для выхода из псевдографического интерфейса достаточно нажать клавишу «q«, о чем говорить выделенная строка в самом низу.
1 |
man <имя команды> |
Однако выполнив команду man, следующим образом,
1 |
man <имя команды> > spravka |
можно получить файл «spravka«, который содержит в себе вывод данной команды по запрашиваемой команде, вместо того чтобы читать в консоли. Также можно ввести аналогичным образом и получить в pdf формате выходной файл.
1 |
man -t <имя команды> > spravka |
Или послать вывод в браузер, например firefox.
1 |
man <имя команды> > /var/tmp/tekst | firefox /var/tmp/tekst && rm /var/tmp/tekst |
Данная команда команда читает страницу man имеющуюся на запрашиваемое «имя команды» и выводит его в файл «tekst«, который будет находиться в директории «/var/tmp«. После этот файл открывается браузером firefox в качестве новой вкладки, после открытия файл «tekst» удаляется, чтобы не плодить временные файлы. Можно конечно делать это и в домашней папке, тогда ставьте вместо указанной директории, это: «~/«. Однако, не пробуйте добавлять параметр «-t» к вышеуказанной команде, т.к. файл tekst удалится ранее, чем вы его сможете открыть другой программой через браузер. В том числе, вышеуказанной команды вам хватить, чтобы любом браузере перекинуть содержание страницы в интернет-переводчик, оставив новую вкладку с оригинальным текстом для уточнения нужных вам моментов. Для разнообразия можете поставить консольный браузер «lynx«, рекомендую, полезная программа, когда у вас с графикой проблемы возникают. Если что, мой сайт можно спокойно читать через нее. Только не забудьте, поправить через клавишу «o«, в настройках цветовую гамму (строка color style, при выборе ставите OFF, не забудьте подтвердить изменения пролистав в самый низ). Т.к. текст почему-то воспринимается не белым цветом.
1 2 3 4 |
sudo apt-get install lynx lynx http://andryuhan.ru man ls > /var/tmp/tekst | lynx /var/tmp/tekst && rm /var/tmp/tekst |
Следующий параметр команды man, выдаст короткую справку, аналогичен команде «whatis«.
1 2 3 |
andryuhan@Linuxoid-komp ~ $ man -f ls ls (1) - list directory contents andryuhan@Linuxoid-komp ~ $ |
Если по каким-то причинам забылось имя команды, однако помнится что она делает, то можно поискать ее по ключевым словам следующим способом.
1 |
man -k <ключевое слово> |
Например.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
andryuhan@Linuxoid-komp ~ $ man -k файл adduser.conf (5) - - файл настройки для adduser(8) и addgroup(8). deluser.conf (5) - файл настройки для deluser(8) и delgroup(8). faillog (5) - файл протокола неудачных попыток входа в систему faillog (8) - показывает записи из файла faillog или задаёт предел неудачных попыток входа в систему grpck (8) - проверяет корректность файлов групп gshadow (5) - файл с защищаемой информацией о группах kfind (1) - программа поиска файлов в KDE manpath (5) - формат файла /etc/manpath.config passwd (5) - файл паролей po2xml (1) - Переводит сообщения из PO-файла в DocBook XML pwck (8) - проверяет целостность файлов паролей shadow (5) - файл теневых паролей split2po (1) - Создаёт PO-файл, основываясь на оригинальном и переведенном файлах в формате DocBook XML swappo (1) - меняет местами поля msgid и msgstr в PO-файле update-passwd (8) - безопасное обновление файлов /etc/passwd, /etc/shadow и /etc/group userdel (8) - удаляет учётную запись и файлы пользователя vigr (8) - позволяют редактировать файлы паролей, групп, теневых паролей пользователей или групп. vimdiff (1) - позволяет редактировать две или три версии файла с помощью Vim с отображением различий. vipw (8) - позволяют редактировать файлы паролей, групп, теневых паролей пользователей или групп. xml2pot (1) - Создаёт шаблон PO на основе файла в формате DocBook XML. xxd (1) - создаёт представление файла в виде шестнадцатеричных кодов или выполняет обратное преобразование. andryuhan@Linuxoid-komp ~ $ |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
andryuhan@Linuxoid-komp ~ $ man -k zip Archive::Zip (3pm) - Provide an interface to ZIP archive files. Archive::Zip::FAQ (3pm) - Answers to a few frequently asked questions about Archive::Zip Archive::Zip::MemberRead (3pm) - A wrapper that lets you read Zip archive members as if they were files. Archive::Zip::Tree (3pm) - (DEPRECATED) methods for adding/extracting trees using Archive::Zip bunzip2 (1) - a block-sorting file compressor, v1.0.6 bzcmp (1) - compare bzip2 compressed files bzdiff (1) - compare bzip2 compressed files bzegrep (1) - search possibly bzip2 compressed files for a regular expression bzfgrep (1) - search possibly bzip2 compressed files for a regular expression bzgrep (1) - search possibly bzip2 compressed files for a regular expression bzip2 (1) - a block-sorting file compressor, v1.0.6 bzip2recover (1) - recovers data from damaged bzip2 files bzless (1) - file perusal filter for crt viewing of bzip2 compressed text bzmore (1) - file perusal filter for crt viewing of bzip2 compressed text funzip (1) - filter for extracting from a ZIP archive in a pipe gpg-zip (1) - encrypt or sign files into an archive gunzip (1) - compress or expand files gzip (1) - compress or expand files lz (1) - gunzips and shows a listing of a gzip'd tar'd archive mzip (1) - change protection mode and eject disk on Zip/Jaz drive p7zip (1) - Wrapper on 7zr, a 7-zip file archiver with high compression ratio PerlIO::gzip (3pm) - Perl extension to provide a PerlIO layer to gzip/gunzip preunzip (1) - prefix delta compressor for Aspell prezip (1) - prefix delta compressor for Aspell prezip-bin (1) - prefix zip delta word list compressor/decompressor tgz (1) - makes a gzip'd tar archive unzip (1) - list, test and extract compressed files in a ZIP archive unzipsfx (1) - self-extracting stub for prepending to ZIP archives uz (1) - gunzips and extracts a gzip'd tar'd archive zforce (1) - force a '.gz' extension on all gzip files zip (1) - package and compress (archive) files zipcloak (1) - encrypt entries in a zipfile zipdetails (1) - display the internal structure of zip files zipgrep (1) - search files in a ZIP archive for lines matching a pattern zipinfo (1) - list detailed information about a ZIP archive zipnote (1) - write the comments in zipfile to stdout, edit comments and rename files in zipfile zipsplit (1) - split a zipfile into smaller zipfiles andryuhan@Linuxoid-komp ~ $ |
1 2 3 |
andryuhan@Linuxoid-komp ~ $ man -k помощь vimdiff (1) - позволяет редактировать две или три версии файла с помощью Vim с отображением различий. andryuhan@Linuxoid-komp ~ $ |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
andryuhan@Linuxoid-komp ~ $ man -k групп addgroup (8) - добавляют пользователя или группу в систему adduser (8) - добавляют пользователя или группу в систему delgroup (8) - удаляют пользователя или группу из системы deluser (8) - удаляют пользователя или группу из системы groupadd (8) - создаёт новую группу groupdel (8) - удаляет группу groupmod (8) - изменяет определение группы в системе grpck (8) - проверяет корректность файлов групп grpconv (8) - преобразует пароли пользователей и групп в/из защищённую форму grpunconv (8) - преобразует пароли пользователей и групп в/из защищённую форму gshadow (5) - файл с защищаемой информацией о группах newgrp (1) - выполняет регистрацию пользователя в новой группе pwconv (8) - преобразует пароли пользователей и групп в/из защищённую форму pwunconv (8) - преобразует пароли пользователей и групп в/из защищённую форму sg (1) - выполняет команду с правами другой группы vigr (8) - позволяют редактировать файлы паролей, групп, теневых паролей пользователей или групп. vipw (8) - позволяют редактировать файлы паролей, групп, теневых паролей пользователей или групп. andryuhan@Linuxoid-komp ~ $ |
Аналогичный вывод можно получить применив команду «apropos«.
1 |
apropos <ключевое слово> |
Например.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
andryuhan@Linuxoid-komp ~ $ apropos групп addgroup (8) - добавляют пользователя или группу в систему adduser (8) - добавляют пользователя или группу в систему delgroup (8) - удаляют пользователя или группу из системы deluser (8) - удаляют пользователя или группу из системы groupadd (8) - создаёт новую группу groupdel (8) - удаляет группу groupmod (8) - изменяет определение группы в системе grpck (8) - проверяет корректность файлов групп grpconv (8) - преобразует пароли пользователей и групп в/из защищённую форму grpunconv (8) - преобразует пароли пользователей и групп в/из защищённую форму gshadow (5) - файл с защищаемой информацией о группах newgrp (1) - выполняет регистрацию пользователя в новой группе pwconv (8) - преобразует пароли пользователей и групп в/из защищённую форму pwunconv (8) - преобразует пароли пользователей и групп в/из защищённую форму sg (1) - выполняет команду с правами другой группы vigr (8) - позволяют редактировать файлы паролей, групп, теневых паролей пользователей или групп. vipw (8) - позволяют редактировать файлы паролей, групп, теневых паролей пользователей или групп. andryuhan@Linuxoid-komp ~ $ |
В том числе стоит учесть, числа в скобках правее имени команды — это страницы man, также стоит знать то, что команда может иметь несколько справочных страниц. Например, команда «passwd» имеет страницы 1 и 5, которые имеют разное содержание согласно номеру страницы. Эти номера означают следующие.
- Исполняемые программы или команды оболочки (shell)
- Системные вызовы (функции, предоставляемые ядром)
- Библиотечные вызовы (функции, предоставляемые программными библиотеками)
- Специальные файлы (обычно находящиеся в каталоге /dev)
- Форматы файлов и соглашения, например о /etc/passwd
- Игры
- Разное (включает пакеты макросов и соглашения), например man(7), groff(7)
- Команды администрирования системы (обычно, запускаемые только суперпользователем)
- Процедуры ядра [нестандартный раздел]
Понятное дело, что вся справочная информация находится в первой странице любой команды, по которой имеется справка в man, т.к. man представляет собой справочную базу данных со своим форматом и т.д., который легко применять дополнять, в том числе писать свои справки для своих команд, однако для этого есть другие команды, о которых не будет идти речь в этой статье.
Так что, когда вам нужно прочесть конкретную страницу справки, а не только первую, которая выбирается по умолчанию, если не указать конкретную страницу, то делайте это следующим образом.
1 |
man <номер страницы> <имя комнады> |
Например.
1 |
man 5 passwd |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
passwd(5) Форматы файлов passwd(5) НАЗВАНИЕ passwd - файл паролей ОПИСАНИЕ Файл /etc/passwd содержит учётные записи пользователей, по одной в каждой строке. Строка состоит из семи полей, разделённых двоеточиями («:»). Поля: · имя пользователя для входа в систему · необязательный зашифрованный пароль · числовой идентификатор пользователя · числовой идентификатор группы · ФИО пользователя или поле комментария · домашний каталог пользователя · необязательный интерпретатор командной строки пользователя Поле с зашифрованным паролем может быть пустым, и тогда для входа под этой учётной записью пароль не требуется. Однако, некоторые приложения, которые читают файл /etc/passwd, могут решить не позволять любой доступ, если поле пароля пустое. Если поле пароля содержит строчную «x», то шифрованный пароль хранится в файле shadow(5); в файле shadow должна быть соответствующая строка, иначе учётная запись считается недействительной. Если в поле пароля содержится какая-то другая строка, то она воспринимается как шифрованный пароль, согласно формату crypt(3). Поле комментария используется различными системными утилитами, такими как finger(1). В поле домашнего каталога хранится начальный рабочий каталог. Программа login использует эту информацию для установки значения переменной окружения $HOME. В поле интерпретатора командной строки хранится название интерпретатора командной строки пользователя или программы, которая будет запущена первой. Программа login использует эту информацию для установки значения переменной окружения $SHELL. Если это поле пустое, то используется значение по умолчанию /bin/sh. ФАЙЛЫ /etc/passwd содержит информацию о пользователях /etc/shadow необязательный файл с шифрованными паролями /etc/passwd- резервная копия файла /etc/passwd Заметим, что этот файл используется программами из комплекта утилит shadow, но не всеми инструментами управления пользователями и паролями. СМОТРИТЕ ТАКЖЕ crypt(3), getent(1), getpwnam(3), login(1), passwd(1), pwck(8), pwconv(8), pwunconv(8), shadow(5), su(1), sulogin(8). shadow-utils 4.2 05/16/2017 passwd(5) |
Однако, обе следующие команды аналогичны друг другу.
1 2 |
man 1 passwd man passwd |
К тому же, учитывая сказанное ранее во введение, стоит подчеркнуть это следующим выводом.
1 2 3 4 |
andryuhan@Linuxoid-komp ~ $ man -t -R=$LANG --locale=$LANG man > spravka-po-man man: iconv_open ("=ru_RU.UTF-8//IGNORE", "UTF-8"): Недопустимый аргумент man: iconv_open ("=ru_RU.UTF-8//IGNORE", "UTF-8"): Недопустимый аргумент andryuhan@Linuxoid-komp ~ $ |
Так что справки в pdf формате на русском языке не ждите, ибо америкашки любят все делать только для самих себя. Так что, чтобы вы тут не горевали, вывожу нормальный вывод справки по man. Это вам, для дополнительного и самостоятельного изучения. А сказанного в статье по man-у и его параметрам достаточно для начинающего линуксоида.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 |
andryuhan@Linuxoid-komp ~ $ man man > spravka-po-man andryuhan@Linuxoid-komp ~ $ cat spravka-po-man MAN(1) Утилиты просмотра справочных страниц MAN(1) НАЗВАНИЕ man - доступ к справочным страницам СИНТАКСИС man [-C файл] [-d] [-D] [--warnings[=предупреждения]] [-R кодировка] [-L локаль] [-m система[,...]] [-M путь] [-S список разделов] [-e доп.расширение] [-i|-I] [--regex|--wildcard] [--names-only] [-a] [-u] [--no-subpages] [-P пейджер] [-r приглашение] [-7] [-E кодировка] [--no-hyphenation] [--no-justification] [-p строка] [-t] [-T[устройство]] [-H[браузер]] [-X[dpi]] [-Z] [[раздел] страница ...] ... man -k [apropos параметры] регвыр ... man -K [-w|-W] [-S список] [-i|-I] [--regex] [раздел] термин ... man -f [whatis параметры] страница ... man -l [-C файл] [-d] [-D] [--warnings[=предупреждения]] [-R кодировка] [-L локаль] [-P пейджер] [-r приглашение] [-7] [-E кодировка] [-p строка] [-t] [-T[устройство]] [-H[браузер]] [-X[dpi]] [-Z] файл ... man -w|-W [-C файл] [-d] [-D] страница ... man -c [-C файл] [-d] [-D] страница ... man [-?V] ОПИСАНИЕ man — это пейджер справочных страниц системы. Каждый параметр страница, переданный man, обычно является названием программы, утилиты или функции. По каждому из этих параметров выполняется поиск и вывод связанной с ним справочной страницы. Если указан параметр раздел, то это заставляет man выполнять поиск только в этом справочном разделе. Действием по умолчанию является поиск во всех доступных разделах в заранее определённом порядке (по умолчанию в «1 n l 8 3 2 3posix 3pm 3perl 5 4 9 6 7», если не изменено директивой SECTION в /etc/manpath.config) и показ только первой найденной страницы, даже если существуют страницы в нескольких разделах. В таблице ниже показаны номера справочных разделов и описание их содержимого. 1 Исполняемые программы или команды оболочки (shell) 2 Системные вызовы (функции, предоставляемые ядром) 3 Библиотечные вызовы (функции, предоставляемые программными библиотеками) 4 Специальные файлы (обычно находящиеся в каталоге /dev) 5 Форматы файлов и соглашения, например о /etc/passwd 6 Игры 7 Разное (включает пакеты макросов и соглашения), например man(7), groff(7) 8 Команды администрирования системы (обычно, запускаемые только суперпользователем) 9 Процедуры ядра [нестандартный раздел] Справочная страница состоит из нескольких разделов. Стандартные имена разделов: НАЗВАНИЕ (NAME), СИНТАКСИС (SYNOPSIS), НАСТРОЙКИ (CONFIGURATION), ОПИСАНИЕ (DESCRIPTION), ПАРАМЕТРЫ (OPTIONS), КОД ВЫХОДА (EXIT STATUS), ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ (RETURN VALUE), ОШИБКИ (ERRORS), ОКРУЖЕНИЕ (ENVIRONMENT), ФАЙЛЫ (FILES), ВЕРСИИ (VERSIONS), СОГЛАСУЕТСЯ С (CONFORMING TO), ЗАМЕЧАНИЯ (NOTES), ОШИБКИ (BUGS), ПРИМЕР (EXAMPLE), АВТОРЫ (AUTHORS) и СМОТРИТЕ ТАКЖЕ (SEE ALSO). В разделе СИНТАКСИС используются следующие соглашения (которые также могут быть использованы в качестве основы для других разделов). текст жирным шрифтом набирать точно как показано. текст курсивным шрифтом заменить соответствующим значением. [-abc] любой или все параметры внутри [ ] необязательны. -a|-b параметры, разделённые |, не могут указываться одновременно. параметр ... повторяющийся параметр. [выражение] ... всё выражение внутри [ ] может вводиться несколько раз. Точная отрисовка может отличаться на разных устройствах вывода. Например, man, обычно, не способна вывести курсив в терминале, и вместо него выведет текст подчёркнутым или цветным. При объяснении команды или функции должен применяться шаблон, который точно описывает все возможные варианты вызова. В некоторых случаях рекомендуется показать несколько уникальных вызовов, как показано в разделе СИНТАКСИС этой справочной страницы. ПРИМЕРЫ man ls Показать справочную страницу для параметра (программы) ls. man -a intro Показать подряд все доступные справочные страницы по intro. В перерыве между показами можно пропустить следующую справочную страницу или закончить просмотр. man -t alias | lpr -Pps Отформатировать справочную страницу по `alias' (обычно это справочная страница для оболочки командной строки) в формат по умолчанию troff или groff, и передать её по каналу на принтер с именем ps. Обычно, форматом вывода groff по умолчанию является PostScript. По команде man --help можно посмотреть какой процессор используется с параметром -t. man -l -Tdvi ./foo.1x.gz > ./foo.1x.dvi Эта команда расжимает и форматирует справочную страницу в формате nroff ./foo.1x.gz в файл в формате независимом от устройства (dvi). Перенаправление вывода необходимо, так как при параметре -T вывод направляется напрямую на стандартный вывод без пейджера. Результат может быть просмотрен с помощью, например, xdvi или преобразован в PostScript с помощью, например, dvips. man -k printf Искать в кратких описаниях и именах справочных страниц ключевое слово printf, рассматриваемое как регулярное выражение. Показать любые найденные совпадения. Эквивалентно вызову apropos printf. man -f smail Искать справочные страницы, ссылающиеся на smail и показать краткое описание любой найденной. Эквивалентно вызову whatis smail. ОБЗОР Многие параметры man предназначены для предоставления как можно большей гибкости пользователю. Можно изменять путь поиска, порядок разделов, выходной обработчик и другие характеристики и операции — всё это подробно описано ниже. В работе man могут использоваться различные переменные окружения. Возможно задать любые параметры во 'всеобъемлющей' переменной $MANOPT, экранируя пробельные символы в значениях (с помощью обратной косой черты). man разбирает $MANOPT перед началом анализа параметров, переданных при вызове в командной строке. Все значения параметров, указанные в командной строке, заменят значения своих аналогов из переменной окружения. Для сброса всех параметров, установленных с помощью $MANOPT, можно указать параметр -D в начале командной строки. Это позволит man 'забыть' о значениях, указанных в $MANOPT, хотя они всё равно должны быть заданы правильно. Утилиты пейджера справочных страниц из пакета man-db широко используют кэши базы данных index. Эти кэши содержат информацию о расположении справочной страницы в файловой системе и какие данные whatis (короткое однострочное описание справочной страницы) она содержит, а также позволяют man работать быстрее, чем если бы каждый раз осуществлялся поиск по файловой системе для нахождения определённой справочной страницы. Если при запросе страницы указан параметр -u, то man проверит целостность кэшей, и в случае проблем может потребоваться ручной запуск программы по обновлению обычных текстовых баз данных whatis. Если man не может найти mandb для первоначального создания базы данных index под определённую иерархию справочных страниц, то она попытается выполнить поиск запрашиваемых справочных страниц, хотя для этого потребуются универсальные имена файлов для поиска внутри иерархии. Если whatis или apropos не удастся найти index, то они попробуют извлечь информацию из традиционной текстовой базы данных whatis. Утилиты пакета могут работать с сжатыми исходными файлами в формате nroff, имеющими расширения по умолчанию .Z, .z и .gz. Возможна работа с любыми расширениями, указывающими на сжатие, но эта информация задаётся на этапе компиляции. Также по умолчанию, любые создаваемые cat страницы сжимаются с помощью gzip. Каждой 'глобальной' иерархии справочных страниц, типа /usr/share/man или /usr/X11R6/man, может быть сопоставлен любой каталог для иерархии cat страниц. Обычно, cat страницы хранятся в той же иерархии что и справочные страницы, но по причинам, указанным в File Hierarchy Standard (FHS), может оказаться лучшим хранить их в другом месте. Подробней о том, как это сделать, читайте в manpath(5). Подробней о том, почему так делается, читайте стандарт. Пакетом обеспечивается поддержка разных языков. Справочные страницы на родном языке доступны (если, они есть в системе) с помощью функций локализации. Чтобы включить поддержку, необходимо присвоить переменной $LC_MESSAGES, $LANG или другой переменной окружения (зависит от системы) значение локали вашего языка, обычно задаваемое в формате, основанном на POSIX 1003.1: <язык>[_<территория>[.<кодировка>[,<версия>]]] Если запрашиваемая страница доступна для вашей локали, то она будет показана вместо стандартной (обычно, на американском английском) страницы. Также в этом пакете есть переводы интерфейса на разные языки, которые могут быть включены тем же путём. Если вы обнаружили, что для вашего языка нет справочных страниц или не переведён интерфейс и вы хотите сделать это, то свяжитесь с сопровождающим, который скоординирует данную работу. О других возможностях и расширениях, доступных в этом пейджере справочных страниц, читайте в описаниях из этого пакета. ЗНАЧЕНИЯ ПО УМОЛЧАНИЮ man ищет требуемые справочные страницы в кэшах базы данных index. Если указан параметр -u, то проверяется целостность кэша, чтобы удостовериться, что базы данных точно отражают данные из файловой системы. Если этот параметр задавать каждый раз, то, в принципе, нет необходимости запускать mandb после первоначального создания кэша, пока кэш не повредится. Однако проверка целостности кэша может работать медленно на машинах с большим количеством установленных справочных страниц, поэтому она не выполняется по умолчанию, и системным администраторам лучше запускать mandb раз в неделю, чтобы поддерживать кэши базы данных в актуальном состоянии. Чтобы предотвратить проблемы из-за устаревших кэшей, man выполняет поиск файлов по имени, если в кэше ничего не нашлось ( как если бы кэша не было). После обнаружения справочной страницы выполняется проверка, существует ли уже отформатированный для неё `cat' файл и что он новее, чем найденный nroff файл. Если уже отформатированный файл существует, он (обычно) расжимается и показывается с помощью пейджера. Нужную программу пейджер можно задать различными способами или используется значение по умолчанию (подробней смотрите в описании параметра -P). Если cat страница не найдена или старее, чем nroff файл, то nroff файл пропускается через различные программы и сразу же показывается. Если есть возможность создать cat файл (существует соответствующий cat каталог и достаточно прав), то man сжимает и сохраняет cat файл в фоновом режиме. Фильтры можно указывать разными способами. Во-первых, обрабатывается значение параметра -p или переменная окружения $MANROFFSEQ. Если -p не указывалась и переменная окружения не установлена, то в поисках строки препроцессора анализируется первая строка nroff файла. Чтобы указывать строку препроцессора правильно, первая строка должна быть в формате '\" <строка> где строка может содержать комбинацию букв, описанных в параметре -p ниже. Если информация о фильтре нигде не указана, то используется набор по умолчанию. Конвейер форматирования создаётся из фильтров и основной программы форматирования (nroff или [tg]roff с параметром -t) и выполняется. Или же, если существует исполняемая программа mandb_nfmt (или mandb_tfmt с параметром -t) в корне дерева справочных страниц, то выполняется именно она. Она получает файл с исходным текстом справочной страницы, строку препроцессора, и, необязательно, устройство, указанное в параметре -T или -E. ПАРАМЕТРЫ Параметры без значений, повторяющиеся в командной строки, $MANOPT или обоих, не опасны. В случае с параметрами со значением, при каждом повторении новое значение заменяет имеющееся. Общие параметры -C файл, --config-file=файл Использовать указанный пользовательский файл настройки вместо значения по умолчанию ~/.manpath. -d, --debug Показывать отладочную информацию. -D, --default Этот параметр обычно вводится самым первым, и указывает man активировать поведение по умолчанию. Он используется для сброса параметров, которые могли быть установлены через переменную окружения $MANOPT. Любые параметры, указанные после -D, будут действовать как обычно. --warnings[=предупреждения] Включить предупреждения от groff. Это может быть использовано для проверки тривиальных ошибок в исходном тексте справочных страниц. Предупреждения представляют собой список названий предупреждений через запятую; если он не указан, то по умолчанию используется значение «mac». Полный список доступных предупреждений можно найти в info groff, раздел “Предупреждения”. Основные режимы работы -f, --whatis Эквивалентно работе whatis. Отображает краткое описание из справочной страницы, если оно есть. Подробней смотрите whatis(1). -k, --apropos Эквивалентно работе apropos. Ищет в кратких описаниях справочных страниц ключевые слова и показывает любые совпадения. Подробней смотрите apropos(1). -K, --global-apropos Поиск текста во всех справочных страницах. Используется простой поиск перебором, что занимает определённое время; если можно, указывайте раздел для сокращения числа страниц, в которых нужно искать. Термины поиска могут быть простыми строками (по умолчанию), или регулярными выражениями, если указан параметр --regex. -l, --local-file Включить 'локальный' режим. Форматирует и показывает локальные справочные файлы, а не ищет их в справочной коллекции системы. Каждый параметр справочной страницы считается именем правильно отформатированного исходного файла nroff. Cat файлы не создаются. Если в качестве одного из параметров указан '-', то данные будут взяты из стандартного входного потока. Если этот параметр не используется и man не может найти запрашиваемую страницу, то перед тем как показать сообщение об ошибке, будет предпринята попытка работать в локальном режиме, используя указанное имя в качестве имени файла для поиска. -w, --where, --path, --location Не выводить содержимое справочных страниц, а показать место(а) нахождения исходных файлов nroff, которые были бы отформатированы. -W, --where-cat, --location-cat Не выводить содержимое справочных страниц, а показать место(а) нахождения cat файлов, которые были бы показаны. Если указаны оба параметра, -w и -W, то выводятся оба результата через пробел. -c, --catman Этот параметр не для обычного использования, и должен использоваться только программой catman. -R кодировка, --recode=кодировка Вместо обычного форматирования справочной страницы можно преобразовать исходный текст в заданную кодировку. Если вам уже известна кодировка исходного файла, то вы можете также использовать непосредственно manconv(1). Однако, этот параметр позволяет преобразовывать несколько справочных страниц в одну кодировку без явного указания кодировки каждой страницы, предполагая, что они уже установлены в структуру, подобную иерархии справочных страниц. Поиск справочных страниц -L локаль, --locale=локаль man, обычно, определяет текущую локаль с помощью вызова C-функции setlocale(3), которая исследует различные переменные окружения, возможно $LC_MESSAGES и $LANG. Для временной подмены полученного значения, используйте этот параметр, задающий локаль только в man. Заметим, что это влияет только непосредственно на поиск страниц. Вывод сообщений программы, например справки, всегда будет выполняться для изначально определённой локали. -m система[,...], --systems=система[,...] Если система имеет доступ к справочным страницам других операционных систем, то к ним можно обратиться с помощью этого параметра. Чтобы найти справочную страницу из коллекции страниц для операционной системы NewOS, укажите -m NewOS. В значении система может указать несколько имён операционных систем через запятую. Чтобы включить поиск по справочным страницам родной операционной системы, добавьте системное имя man в это значение. Этот параметр заменяет значение переменной окружения $SYSTEM. -M путь, --manpath=путь Задать альтернативный manpath для работы. По умолчанию, для определения пути поиска man использует manpath, указанный в исходном коде программы. Этот параметр заменяет значение переменной окружения $MANPATH и выключает действие параметра -m. Задаваемый в качестве manpath путь должен быть корнем иерархии справочных страниц, разделённой на разделы, описанных в справочной странице по man-db (в разделе "Система справочных страниц"). Для просмотра справочных страниц вне этих иерархий, используйте параметр -l. -S список, -s список, --sections=список В списке перечисляются справочные разделы для поиска 'в указанном порядке' (через запятую или двоеточие). Этот параметр заменяет значение переменной окружения $MANSECT. (Параметр -s введён для совместимости с System V.) -e доп.расширение, --extension=доп.расширение Некоторые системы включают большое число пакетов справочных страниц, например таких, которые поставляются с пакетом Tcl, в главную иерархию справочных страниц. Для решения проблемы появления двух справочных страниц с одинаковым именем, например, exit(3), все страницы Tcl, обычно, помещаются в раздел l. Но для страниц такого типа уже определён правильный раздел (3). Теперь возможно помещать страницы в правильный раздел, и назначать им специальное 'расширение', в данном случае, exit(3tcl). Обычно, man показывает exit(3), а не exit(3tcl). Чтобы преодолеть это и не запоминать в каком разделе лежит определённая страница, теперь возможно передать man строку доп.расширения, указывающую какому пакету должна принадлежать страница. Возвращаясь к примеру выше, укажите параметр -e tcl для man, чтобы ограничить поиск только страницами с расширением *tcl. -i, --ignore-case Игнорировать регистр при поиске справочных страниц. Включено по умолчанию. -I, --match-case Искать справочные страницы с учётом регистра символов. --regex Показывает все страницы, у которых какая-то часть в имени или в описании совпадает с параметром страница, заданным в виде регулярного выражения, также как apropos(1). Так как, обычно, нет разумного способа определить "лучшую" страницу при поиске по регулярному выражению, то этот параметр подразумевает -a. --wildcard Показывает все страницы, у которых какая-то часть в имени или в описании совпадает с параметром страница, заданным в виде групповых символов, также как в apropos(1) --wildcard. Значение страница должно полностью совпадать с именем или описанием, или совпадать по границе слов в описании. Так как, обычно, нет разумного способа определить "лучшую" страницу при поиске по регулярному выражению, то этот параметр подразумевает -a. --names-only Если указан параметр --regex или --wildcard, то совпадения ищутся только в именах страниц, а не в описании страницы, как в whatis(1). Иначе, этого не происходит. -a, --all По умолчанию, man завершает работу после показа наиболее подходящей найденной справочной страницы. Этот параметр заставляет man показать все справочные страницы с именами, которые удовлетворяют критериям поиска. -u, --update Этот параметр заставляет man выполнять проверку целостности своих кэшей базы данных 'на уровне inode', чтобы убедиться, что они точно представляют данные из файловой системы. Это работает только, если man установлена с включённым setuid битом. --no-subpages По умолчанию, man пытается интерпретировать пары имён справочных страниц, указанных в командной строке, как единое имя справочной страницы, содержащее символ переноса или подчёркивания. Это поддерживает общую систему программ, которые имеют несколько подкоманд, позволяя для каждой из них предоставлять справочные страницы используя синтаксис, похожий на вызов самих подкоманд. Например: $ man -aw git diff /usr/share/man/man1/git-diff.1.gz Чтобы выключить такое поведение, укажите параметр --no-subpages. $ man -aw --no-subpages git diff /usr/share/man/man1/git.1.gz /usr/share/man/man3/Git.3pm.gz /usr/share/man/man1/diff.1.gz Контролирование форматированного вывода -P пейджер, --pager=пейджер Указывает, какой пейджер использовать для вывода. По умолчанию, man использует pager. Этот параметр заменяет значение переменной окружения $MANPAGER которая, в свою очередь, заменяет значение переменной окружения $PAGER. Не используется вместе с -f или -k. Значением может быть просто имя команды или команды с параметрами, можно использовать экранирование интерпретатора команд (обратные слэши, одиночные кавычки или двойные кавычки). Нельзя объединять несколько команд каналами; если эту нужно, создайте сценарий-обёртку, который получает файл для показа в виде параметра или со стандартного ввода. -r приглашение, --prompt=приглашение Если в качестве пейджера используется новая версия less, то man будет пытаться установить ей формат приглашения и некоторые значимые параметры. По умолчанию приглашение выглядит как Manual page имя(раздел) line x где имя это имя справочной страницы, раздел — раздел, в котором она была найдена и x — номер текущей строки. Приглашение устанавливается с помощью переменной окружения $LESS. Данное значение по умолчанию можно изменить с помощью параметра -r. Значение параметра может содержать текст $MAN_PN, вместо которого подставляется имя текущей справочной страницы и её название раздела, окружённое `(' и `)'. Строка, используемая для создания приглашения по умолчанию, могла бы выглядеть как \ Справочная\ страница\ \$MAN_PN\ ?ltстрока\ %lt?L/%L.: byte\ %bB?s/%s..?\ (ВСЕ):?pB\ %pB\\%.. (h — справка, q — выход) Здесь она разделена на три строки только для повышения читаемости. Описание её составных частей смотрите в справочной странице less(1). Строка приглашения сначала обрабатывается оболочкой командной строки. Все двойные кавычки, обратные кавычки и обратные косые черты в приглашении должны предваряться обратными косыми чертами для экранирования. Строка приглашения может заканчиваться экранированным $, за которым можно указать другие параметры less. По умолчанию, man указывает параметры -ix8. Переменная окружения $MANLESS, описанная ниже, может использоваться для назначения строки приглашения по умолчанию, если это не задано в командной строке. -7, --ascii При просмотре справочной страницы в изначальной кодировке ascii(7) на 7-битном терминале или эмуляторе терминала при использовании описания устройства latin1(7) с GNU nroff некоторые символы могут неправильно отображаться . Этот параметр позволяет справочным страницам в изначальной ascii отображаться в ascii, используя устройство latin1. Любой latin1 текст не будет транслироваться. Следующая таблица показывает выполняемые трансляции: некоторые её части могут отображаться правильно только при использовании GNU nroff устройства latin1(7). Описание Восьмеричный код latin1 ascii ──────────────────────────────────── длинный перенос 255 ‐ - bullet (точка в центре) 267 · o значок ударения 264 ´ ' знак ударения 327 × x Если колонка latin1 отображается правильно, то ваш терминал может быть настроен для отображения символов latin1 и этот параметр ненужен. Если колонки latin1 и ascii одинаковы, то вы читаете эту страницу с помощью данного параметра, или man не отформатировал страницу с помощью описания устройства latin1. Если колонка latin1 отсутствует или повреждена, то вам может потребоваться просматривать справочные страницы с помощью этого параметра. Этот параметр игнорируется при использовании параметров -t, -H, -T или -Z, и может быть бесполезен для nroff, если он не от GNU. -E кодировка, --encoding=кодировка Сгенерировать вывод в символьной кодировке, отличной от используемой по умолчанию. Кроме реальной символьной кодировки, типа UTF-8, для обратной совместимости в кодировке можно указывать устройство nroff, например, ascii, latin1 или utf8. --no-hyphenation, --nh Обычно, nroff автоматически разбивает текст при окончании строки даже на словах, у которых нет переносов, если это необходимо для размещения слов в строке для избежания лишних пробелов. Этот параметр отключает автоматический перенос; в результате перенос выполняется только для слов, в которых есть символы переноса. Если вы пишите справочную страницу и просто хотите отключить в nroff перенос в словах в неподходящем месте, не используйте этот параметр, а почитайте документацию к nroff; например, вы можете поместить "\%" внутрь слова в место возможного разрыва, или поместить "\%" в начало слова, что не даст его разорвать совсем. --no-justification, --nj Обычно, nroff автоматически выравнивает текст по обеим границам. Этот параметр выключает полное выравнивание, оставляя выравнивание по левому краю, получается так называемый текст "без выключки по правому краю". Если вы пишите справочную страницу и просто хотите отключить в nroff выравнивание в некоторых параграфах, не используйте этот параметр, а почитайте документацию к nroff; например, вы можете использовать запросы ".na", ".nf", ".fi", и ".ad" для временного отключения выравнивания и заполнения. -p строка, --preprocessor=строка Задать последовательность препроцессоров для запуска перед nroff или troff/groff. Не во всех системах имеется полный набор препроцессоров. Некоторые препроцессоры и буквы, используемые для их обозначения: eqn (e), grap (g), pic (p), tbl (t), vgrind (v), refer (r). Этот параметр заменяет значение переменной окружения $MANROFFSEQ. zsoelim запускается всегда в качестве первого очень быстрого препроцессора. -t, --troff Использовать groff -mandoc для форматирования справочной страницы и вывода в стандартный выходной поток. Этот параметр не требуется вместе с -H, -T или -Z. -T[устройство], --troff-device[=устройство] Этот параметр используется для замены вывода groff (или, возможно, troff) на более подходящий для устройства, отличного от используемого по умолчанию. Подразумевается -t. Примеры (предоставляются с Groff-1.17) включают dvi, latin1, ps, utf8, X75 и X100. -H[браузер], --html[=браузер] Этот параметр заставляет groff создавать HTML -страницу, и отображать её в веб-браузере. Выбор браузера определяется необязательным значением браузер, переменной окружения $BROWSER, или, если ничего не указано, значением по умолчанию, установленным при компиляции программы (обычно lynx). Этот параметр предполагает -t, и работает только с GNU troff. -X[dpi], --gxditview[=dpi] С этим параметром вывод groff осуществляет в графическое окно с помощью программы gxditview. Значениями dpi (точек на дюйм) могут быть 75, 75-12, 100 или 100-12; по умолчанию 75; в вариантах с -12 в конце используется базовый шрифт в 12 точек. Этот параметр подразумевает -T со значениями устройств X75, X75-12, X100 и X100-12 соответственно. -Z, --ditroff groff запустит troff, а затем использует соответствующий постпроцессор для создания результата, подходящего для выбранного устройства. Если groff -mandoc совпадает с groff, то данный параметр передаётся groff и использование постпроцессора отменяется. Подразумевает -t. Выдача справки -?, --help Показать справочное сообщение и закончить работу. --usage Показать короткое сообщение об использовании и завершить работу. -V, --version Показать информацию о версии. КОД ВЫХОДА 0 Успешное выполнение программы. 1 Была показана справка об использовании, произошла синтаксическая ошибка или проблемы в файле настройки. 2 Ошибка при работе. 3 Дочерний процесс завершился с ненулевым кодом выхода. 16 По крайней мере одна из страниц/файлов/ключевых слов не существует или для неё при поиске ничего не найдено. ОКРУЖЕНИЕ MANPATH Если установлена переменная окружения $MANPATH, то её значение используется в качестве пути поиска справочных страниц. MANROFFOPT Содержимое переменной окружения $MANROFFOPT добавляется в командную строку всякий раз, когда man вызывает программу форматирования (nroff, troff или groff). MANROFFSEQ Если установлена переменная окружения $MANROFFSEQ, то её значение используется для определения набора препроцессоров для обработки каждой справочной страницы. Список препроцессоров по умолчанию зависит от системы. MANSECT Если установлена переменная окружения $MANSECT, то её значением является список разделов, указанных через двоеточие, и она используется для задания разделов справочных страниц, в которых будет производится поиск и в каком порядке. Значением по умолчанию является «1 n l 8 3 2 3posix 3pm 3perl 5 4 9 6 7», если оно не заменено директивой SECTION в /etc/manpath.config. MANPAGER, PAGER Если установлена переменная окружения $MANPAGER или $PAGER ($MANPAGER просматривается первой), то в ней задано имя программы для отображения справочной страницы. По умолчанию, используется pager. Значением может быть просто имя команды или команды с параметрами, можно использовать экранирование интерпретатора команд (обратные слэши, одиночные кавычки или двойные кавычки). Нельзя объединять несколько команд каналами; если эту нужно, создайте сценарий-обёртку, который получает файл для показа в виде параметра или со стандартного ввода. MANLESS Если установлена переменная окружения $MANLESS, то её значение будет использоваться по умолчанию как строка приглашения для пейджера less, как если бы был указан параметр -r (так что любые появления текста $MAN_PN будут как-то раскрыты). Например, если вы хотите установить строку приглашения дословно в “my prompt string”, то установите $MANLESS равной ‘-Psmy prompt string’. Указанное значение параметра -r замещает значение переменной окружения. BROWSER Если установлена переменная окружения $BROWSER, то её значение представляет собой список команд, разделяемых двоеточием; каждая из них используется для попытки запуска веб-браузера для man --html. В каждой команде %s заменяется именем файла, содержащим HTML результат от groff, %% заменяется одним знаком процента (%), а %c заменяется двоеточием (:). SYSTEM Установка значения переменной окружения $SYSTEM равносильна указанию параметра -m. MANOPT Если установлена переменная окружения $MANOPT, то она анализируется раньше командной строки man и должна задаваться в том же формате. Значения всех специальных переменных окружения man могут быть заданы в параметрах командной строки, а включение в $MANOPT показывает, что данный параметр скоро устареет. Обратите особое внимание на то, что все пробелы, которые должны быть частью значения параметра, нужно экранировать. MANWIDTH Если установлена переменная окружения $MANWIDTH, то её значение используется в качестве длины строки форматируемых справочных страниц. Если она не установлена, то справочные страницы будут отформатированы по длине строки текущего терминала (используется значение переменной $COLUMNS, вызов ioctl(2), если он доступен или 80 символов, если ничего недоступно). Cat страницы будут сохраняться на диск только, если может быть использовано форматирование по умолчанию, то есть когда длина строки терминала лежит в промежутке между 66 и 80 символами. MAN_KEEP_FORMATTING Обычно, если вывод не направляется на терминал (например, в файл или канал), символы форматирования отбрасываются для облегчения чтения результата не имея специальных инструментов. Однако, если переменная окружения $MAN_KEEP_FORMATTING установлена в непустое значение, то символы форматирования остаются. Это может быть полезно для оболочек вокруг man, которые распознают символы форматирования. MAN_KEEP_STDERR Обычно, если вывод направляется на терминал (например, в пейджер), все ошибки вывода команды, используемой для создания форматированного варианта справочной страницы, отбрасываются во избежании порчи отображаемого текста. Программы типа groff часто выводят относительно безобидные сообщения об ошибках, например о печатных проблемах плохого выравнивания вперемешку с информацией справочной страницы. Однако, некоторые пользователи всё равно хотели бы их видеть, и поэтому, если установить переменную окружения $MAN_KEEP_STDERR в непустое значение, вывод ошибок будет производиться как обычно. LANG, LC_MESSAGES В зависимости от системы и реализации, одна или обе переменные $LANG и $LC_MESSAGES будут просмотрены для определения текущей локали сообщений. man будет отображать свои сообщения в этой локали (если они для неё есть). Подробней смотрите в setlocale(3). ФАЙЛЫ /etc/manpath.config Файл настройки man-db. /usr/share/man Глобальная иерархия справочных страниц. /usr/share/man/index.(bt|db|dir|pag) Традиционный кэш глобальной базы данных index. /var/cache/man/index.(bt|db|dir|pag) Соответствующий FHS глобальный кэш базы данных index. СМОТРИТЕ ТАКЖЕ apropos(1), groff(1), less(1), manpath(1), nroff(1), troff(1), whatis(1), zsoelim(1), setlocale(3), manpath(5), ascii(7), latin1(7), man(7), catman(8), mandb(8), руководство к пакету man-db, FSSTND ИСТОРИЯ 1990, 1991 – изначально написана Джоном В. Итоном (John W. Eaton, jwe@che.utexas.edu). 23 декабря 1992: Рик Фейт (Rik Faith, faith@cs.unc.edu) исправил ошибки, найденные Виллемом Касдорпом (Willem Kasdorp, wkasdo@nikhefk.nikef.nl). 30 апреля 1994 – 23 февраля 2000: Вильф (Wilf., G.Wilford@ee.surrey.ac.uk) разрабатывал и сопровождал этот пакет с помощью некоторых других людей. 30 октября 1996 – 30 марта 2001: Фабрицио Полако (Fabrizio Polacco, <fpolacco@debian.org> сопровождал и улучшал этот пакет для проекта Debian с помощью всего сообщества. 31 марта 2001 – настоящие дни: Колин Уотсон (Colin Watson, <cjwatson@debian.org> занимается разработкой и сопровождением man-db. 2.7.5 2015-11-06 MAN(1) andryuhan@Linuxoid-komp ~ $ |
Так что, несмотря на недоработки параметра печати справочной страницы, вышеприведенный текст можно вставить в любой редактор, например Write в LibreOffice, переведя его там в pdf на русском языке. Только потом, не говорите:»нету справки на родном языке, надо учить английский». Фигу, вот вам, не это хрень языковая.
В дополнение к сказанному в статье, приведу еще две полезные для начинающего линуксоида команды, а это: «whereis» и «which«. Первая показывает пути к исполняемым файлам, файлам исходных кодов, файла справки и прочим файлам, которые связанны с именем программы, коли они совпадают по имени. А вторая команда, показывает какой путь имени команды будет выполнен по умолчанию. В том числе, эта команда позволяет проверить, есть ли такая команда (программа) у вас и откуда она будет запущена. А теперь наглядный пример, чтобы вам все было понятно.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
andryuhan@Linuxoid-komp ~ $ whereis passwd passwd: /usr/bin/passwd /etc/passwd /usr/share/man/man5/passwd.5.gz /usr/share/man/man1/passwd.1ssl.gz /usr/share/man/man1/passwd.1.gz andryuhan@Linuxoid-komp ~ $ whereis -b passwd passwd: /usr/bin/passwd /etc/passwd andryuhan@Linuxoid-komp ~ $ whereis -s passwd passwd: andryuhan@Linuxoid-komp ~ $ whereis -m passwd passwd: /usr/share/man/man5/passwd.5.gz /usr/share/man/man1/passwd.1ssl.gz /usr/share/man/man1/passwd.1.gz andryuhan@Linuxoid-komp ~ $ which passwd /usr/bin/passwd andryuhan@Linuxoid-komp ~ $ whereis echo echo: /bin/echo /usr/share/man/man1/echo.1.gz andryuhan@Linuxoid-komp ~ $ whereis -b echo echo: /bin/echo andryuhan@Linuxoid-komp ~ $ whereis -s echo echo: andryuhan@Linuxoid-komp ~ $ whereis -m echo echo: /usr/share/man/man1/echo.1.gz andryuhan@Linuxoid-komp ~ $ which echo /bin/echo andryuhan@Linuxoid-komp ~ $ whereis firefox firefox: /usr/bin/firefox /usr/lib/firefox /etc/firefox /usr/share/man/man1/firefox.1.gz andryuhan@Linuxoid-komp ~ $ whereis -b firefox firefox: /usr/bin/firefox /usr/lib/firefox /etc/firefox andryuhan@Linuxoid-komp ~ $ whereis -s firefox firefox: andryuhan@Linuxoid-komp ~ $ whereis -m firefox firefox: /usr/share/man/man1/firefox.1.gz andryuhan@Linuxoid-komp ~ $ which firefox /usr/bin/firefox andryuhan@Linuxoid-komp ~ $ |
Здесь сделан вывод по общей схеме, а это: общее, исполняемые файлы (бинарные), файлы исходных кодов, в данном случае пустое поле после имени команды, т.к. их у меня нет, файлы справочных страниц и вывод пути исполнения, который вписан в переменную окружения $PATH.
В заключение.
В заключение, скажу, что вышеприведенных команд Начинающему Линуксоиду достаточно для освоения и ознакомления с командной строкой ОС ГНУ/Линукс. Однако, несмотря на чрезмерное засилье не родного языка, всегда есть переводы этих страниц, в том числе стоит обращать внимание на интернет-ресурсы с переводами, т.к. значительная или значимая часть содержания редко меняется, то вам хватить этих переводов для самообразования. В остальном, рекомендую читать книжки по ОС ГНУ/Линукс. Например, «Linux карманный справочник» помогла мне разобраться в свое время с основами командной оболочки Баш, в том числе в работе с основными и другими командами. Для начала, этого достаточно. А в качестве интернет-ресурса, рекомендую читать здесь.
Теперь, познакомившись с тремя основными командами, а это: man, whereis и which. Вы, в состоянии, полностью осмотреться в просторах командной строки и изучить все нужные и/или требуемые вам команды. Также, включив соображение и воображение, с пробами, вы, сможете решить различные проблемные ситуации по поиску справки на родном языке, в том числе с применением интернет-переводчика.
Однако, это еще не все, с чем стоить ознакомиться Начинающему Линуксоиду. Ждите, новых статей, которые обязательно будут на моем блоге.