Как мне напрямую отобразить страницу руководства?

Как мне напрямую отобразить страницу руководства?

Я пишу man-страницу для программы, которую я упаковываю. Как мне отобразить файл man-страницы, который я создал, чтобы проверить, все ли с ним в порядке? Есть ли способ передать мой файл напрямую команде, manа не искать установленные man-страницы по имени?

Я пробовал делать что-то вроде man myprog.1и , man < myprog.1но в обоих случаях получал ошибку, сообщающую о том, что страница руководства не найдена.

решение1

manесть возможность прочитать локальный файл:-l

-l, --local-file

Активировать режим `local'. Форматировать и отображать локальные файлы руководств вместо поиска в системной коллекции руководств. Каждый аргумент страницы руководства будет интерпретироваться как исходный файл nroff в правильном формате. Файл cat не создается.

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

Итак, вы можете предварительно просмотреть ход выполнения своей работы с помощью:

man -l /path/to/manfile.1

решение2

«Старый» способ для систем, которые появились до этой -lопции, это

nroff -man filename | more -s

решение3

Я просто использовал

man ./path/to/man.1

Вам нужно включить слеш в путь, иначе он будет искать в системных каталогах. Работает на системах Linux и OS X, которые у меня есть (в последней нет -l).

$ cd /tmp
$ cp /usr/share/man/man1/ls.1 .
$ man ls.1
No manual entry for ls.1
$ man ./ls.1     # works

решение4

В Solaris -Mпереключение на manпереопределит путь поиска для страниц руководства:

man -M path/to/man myprog

Ваш файл man-страницы должен находиться в подходящем подкаталоге, соответствующем разделу и языку разметки, например: path/to/man/man1/myprog.1для nroff-manpage в разделе 1.

Связанный контент