man(1)

ИМЕ
man - форматиране и извеждане на страници от електронното ръководство

СИНТАКСИС
man [-acdfFhkKtwW] [--path] [-m система] [-p низ] [-C конфигурационен_файл] [-M път] [-P програма] [-B браузър] [-H програма_за_HTML] [-S списък_от_раздели] [раздели] име ...

ОПИСАНИЕ
man форматира и извежда страници от електронното ръководство. Ако е указан раздел, man търси само в този раздел на ръководството. име обикновено е име на страница от ръководството, т.е. по принцип име на команда, функция или файл. Ако обаче име съдържа наклонена черта (/), man , го възприема като име на файл, така че можете да изпълните man ./foo.5 или дори man /cd/foo/bar.1.gz.

По-надолу е описано къде man търси страниците от ръководството.

ОПЦИИ

-C  конфигурационен_файл
    Указва кой конфигурационен файл да се използва. Подразбира се /usr/lib64/man.conf. (Вижте man.conf(5)).

-M  списък_с_пътища
    Списък от директории, разделени с двоеточие, в които да се търсят страници от ръководството. Празен списък е същото като да не се укаже -M. Вижте ПЪТ ЗА ТЪРСЕНЕ НА СТРАНИЦИ ОТ РЪКОВОДСТВОТО.

-P  програма
    Програма, която да се ползва за показване на страниците. Тази опция е с по-висок приоритет от променливата на средата MANPAGER, която пък е с по-висок приоритет от променливата PAGER. По подразбиране man използва /usr/bin/less -is.

-B  Указва, коя програма за разглеждане да се използва за файлове с HTML. Тази опция е с по-висок приоритет от променливата на средата BROWSER. По подразбиране man използва /usr/bin/lynx,

-H  Указва програмата за текстово изобразяване на файлове с HTML. Този опция е с по-висок приоритет от променливата на средата HTMLPAGER. По подразбиране man използва /usr/bin/lynx-dump,

-S  списък_от_раздели
    Списък от раздели, разделени с двоеточие, в които да се търсят страници от ръководството. Тази опция е с по-висок приоритет от променливата на средата MANSECT.

-a  Извеждане на всички намерени страници. По подразбиране man приключва търсенето при намирането на първата страница. Чрез тази опция man претърсва всички страници.

-c  Форматиране наново на оригиналната страница, дори ако вече съществува актуална, готова страница. Това има смисъл, ако предварително форматираната страница е повредена или форматирана за екран с различна ширина на текста.

-d  Не се извеждат страници, а диагностична информация за изпълнението на man.

-D  Извеждане и на страниците, и на диагностична информация.

-f  Еквивалент на whatis.

-F или --preformat
    Само форматиране, без извеждане.

-h  Извеждане на едноредово помощно съобщение и изход.

-k  Еквивалент на apropos.

-K  Търсене на указан низ във *всички* страници. Предупреждение: това най-вероятно ще е много бавно, така че е добре е да се укаже раздел. (За да придобиете представа - на моята машина търсенето в 500 страници отнема около минута).

-m  система
    Търсене в различен комплект от страници, отговарящи на указаната система.

-p  низ
    Списък от команди за предварителна обработка, които да се стартират преди nroff или troff. Не всички системи разполагат с пълен набор от средства за предварителна обработка. Някои от командите за предварителна обработка и буквите, които ги указват са: eqn (e), grap (g), pic (p), tbl (t), vgrind (v), refer (r). Тази опция е с по-висок приоритет от променливата на средата MANROFFSEQ.

-t  Използване на /usr/bin/groff -Tps -mandoc за форматиране на страницата и изпращане на резултата на стандартния изход - stdout. Възможно е да се наложи използването на допълнителен филтър преди страницата да се отпечата.

-w или --path
    Не се извеждат страниците, а местонахождението на файловете, които биха били форматирани или изведени. Ако не е указан аргумент, извеждане (на стандартния изход) на директориите, в които man търси страници от ръководството. Ако командата manpath сочи към man, то "manpath" е еквивалент на "man --path".

-W  Като -w, но имената на файловете се извеждат по един на ред и без допълнителна информация. Използва се за команди в команден интерпретатор като man -aW man | xargs ls -l.

ГОТОВИ СТРАНИЦИ
За да спести времето за форматирането на страниците, man се опитва да съхрани форматираните страници и впоследствие да ги използва готови. По традиция готовите версии ("cat") на страниците от ДИРЕКТОРИЯ/manX се съхраняват в ДИРЕКТОРИЯ/catX, но в /usr/lib64/man.conf може да се укаже други съответствия. Готовите страници не се съхраняват, ако необходимата за това директория липсва, форматираните версии използват ширина на текста различна от 80 символа или man.conf съдържа директивата NOCACHE.

Възможно е правата за потребител при изпълнение на man да се присвоят (suid) на потребителя man. Тогава, ако директорията за готовите страници е притежавана от потребителя man и има права за достъп 0755 (достъпна за запис само от man), и ако готовите файлове са също притежавани от потребителя man и имат права за достъп 0644 или 0444 (достъпни за запис само от man или забранени за запис), никой обикновен потребител не може да променя готови страници или да помества други файлове в директорията с готовите файлове. Ако правата при изпълнение на man не са присвоени (suid) на потребителя man и всички потребители трябва да могат да създават cat страници, то директориите за готовите файлове трябва да са с права за достъп 0777.

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

СТРАНИЦИ С HTML
Man открива страници с HTML, ако те са разположени в директории с име html плюс разширение за раздел. Последното разширение на файловете със страници трябва да е ".html". С други думи - правилното име на страницата от ръководството за командата ls(1) във формат HTML е /usr/share/man/htmlman1/ls.1.html.

ПЪТ ЗА ТЪРСЕНЕ НА СТРАНИЦИ ОТ РЪКОВОДСТВОТО
man използва сложен алгоритъм за търсене на страници от ръководството, базиран на подадените опции, променливите на средата, конфигурационния файл /usr/lib64/man.conf и някои вградени конвенции.

Първо, ако аргументът име подаден на man съдържа наклонена черта (/), man го възприема като име на файл и не провежда никакво търсене.

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

Ако зададете опцията -M път, то път е списъкът от директории, които man претърсва.

Ако не зададете -M, но дадете стойност на променливата на средата MANPATH, тази стойност е списъкът от директории разделени с двоеточие, които man претърсва.

Ако не укажете явен списък с пътища за търсене чрез -M или MANPATH, man съставя свой собствен списък от директории за търсене, базиран на съдържанието на конфигурационния файл /usr/lib64/man.conf. Директивите MANPATH в конфигурационния файл указват отделните директории, които да се включат в пътя за търсене.

Освен това директивите MANPATH_MAP добавят директории към пътя за търсене на страници в зависимост от списъка с пътища за търсене на команди, т.е. на променливата на средата PATH. За всяка директория, която е в списъка за търсене на команди, директивата MANPATH_MAP указва директория, която да бъде добавена към пътя за търсене на страници. man взема стойността на променливата PATH и добавя съответните директории към пътя за търсене на страници. По този начин, при правилно използване на MANPATH_MAP, когато изпълните командата man xyz, ще получите страницата от ръководството за програмата, която би била стартирана, ако се изпълни командата xyz.

В допълнение, за всяка директория от списъка с пътища за търсене на команди ("командна директория"), за която липсва директива MANPATH_MAP , man автоматично търси директория за страници „наблизо“, по-точно поддиректория на командната директория или на нейната родителска директория.

Търсенето на директории „наблизо“ може да се изключи с директивата NOAUTOPATH в /usr/lib64/man.conf.

Във всяка от директориите, описани по-горе, man търси файл наречен име.раздел, с незадължително разширение - номера на раздела и евентуално с разширение за компресия. Ако не намери такъв файл, man търси във всички поддиректории, ако има такива, с имена manN или catN, където N е номерът на раздела на ръководството. Ако файлът е в поддиректория catN, man приема, че това е файл с готова, форматирана страница. В противен случай man приема, че файлът е неформатиран. И в двата случая, ако името на файла завършва с известно на man разширение за компресия, например .gz, man приема, че файлът е компресиран.

Ако искате да видите дали (или къде) man би намерил дадена страница от ръководството, използвайте опцията --path (-w).

СРЕДА

MANPATH
    Път за търсене на страници от ръководството. Тази променлива е с по-висок приоритет от конфигурационния файл и автоматичния път за търсене, но с по-нисък от опцията -M. Вижте ПЪТ ЗА ТЪРСЕНЕ НА СТРАНИЦИ ОТ РЪКОВОДСТВОТО.

MANPL
    Дължина на страницата. Ако не е зададена, цялата страница от ръководството заема една единствена (дълга) форматирана страница.

MANROFFSEQ
    Набор от команди за предварителна обработка, които да се стартират преди nroff или troff. По подразбиране, преди nroff страниците се обработват с tbl.

MANSECT
    Набор от раздели на ръководството, в които да се търси.

MANWIDTH
    Ширина на страницата. Ако не е зададена се използва широчината на екрана.

MANPAGER
    Име на програма, с която страниците да се извеждат. Ако не е зададена, се ползва PAGER. Ако и тя няма стойност, ползва се /usr/bin/less-is.

BROWSER
    Името на програмата за разглеждане на страници от ръководството във формат HTML. Ако не е зададена, се използва /usr/bin/lynx.

HTMLPAGER
    Командата за текстово изобразяване на страниците от ръководството с HTML. Ако не е зададена се използва /usr/bin/lynx -dump.

LANG
    Поддиректория, в която man най-напред търси страниците от ръководството. Така командата „LANG=bg man 1 foo“ ще накара man да търси страницата за foo първо в .../bg/man1/foo.1, и ако не я намери там, в .../man1/foo.1 (... е директория от списъка с пътища за търсене).

NLSPATH, LC_MESSAGES, LANG
    Променливите на средата NLSPATH и LC_MESSAGES (или LANG, ако LC_MESSAGES няма стойност) влияят върху намирането на каталога със съобщения на man (английските съобщения са компилирани в самия man и не изискват каталог). Забележка: програми, викани служебно от man, например col(1), също използват LC_CTYPE.

PATH
    Помага да се състави списъкът с пътища за търсене на страници от ръководството. Вижте ПЪТ ЗА ТЪРСЕНЕ НА СТРАНИЦИ ОТ РЪКОВОДСТВОТО.

SYSTEM
    Подразбиращо се име на различна система за опцията -m.

ГРЕШКИ
Опцията -t работи, само ако е инсталирана програмата troff или подобна.
Ако виждате виждате (мигащо) \255 или <AD> вместо тирета, задайте в обкръжението LESSCHARSET=latin1.

ПОЛЕЗНИ СЪВЕТИ
Ако добавите реда
  (global-set-key [(f1)] (lambda () (interactive) (manual-entry (current-word)))) към вашия файл .emacs , натискането на F1 ще ви дава страница с помощ за библиотечната функция, на която е позициониран курсора.

За да получите чисто текстова версия на страница от ръководството, без обратни наклонени черти и подчертавания, използвайте:
  # man foo | col -b > foo.mantxt

АВТОР/ПОДДРЪЖКА
Първоначалният автор на man е John W. Eaton. Federico Lucifredi <flucifredi@acm.org> осъществява текущо поддръжката на пакета.

ПРЕВОД
Димитър Жеков, Александър Шопов <ash@contact.bg>

ВИЖТЕ СЪЩО
apropos(1), whatis(1), less(1), groff(1), man.conf(5).