Как открыть файл .8 с человеком?

10

Как правильно открыть локальный .8файл, как named.8с помощью manкоманды?

У меня есть manкоманда и у меня есть .8файл. В моем случае это bind9/bin/named/named.8(что можно найти на github), я почти уверен, что смог сделать это раньше.

В моем конкретном случае это

$ man --version
man 2.7.5

$ man -C named.8
man: can't parse directory list `.\" Copyright (C) 2000, 2001, 2003-2009, 2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
'
man: can't make sense of the manpath configuration file /etc/manpath.config

named.8 начинается с:

.\" Copyright (C) 2000, 2001, 2003-2009, 2011, 2013-2017 Internet Systems Consortium, Inc. ("ISC")
.\" 
.\" This Source Code Form is subject to the terms of the Mozilla Public
.\" License, v. 2.0. If a copy of the MPL was not distributed with this
.\" file, You can obtain one at http://mozilla.org/MPL/2.0/.
.\"
.hy 0
.ad l
'\" t
.\"     Title: named
.\"    Author: 
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\"      Date: 2014-02-19
.\"    Manual: BIND9

Я попробовал поиск Google "Как открыть файл .8." и было 0 результатов, так что я думаю, что должен быть результат для этого (что в n раз лучше по причине, чтобы задать вопрос, чем если бы мне нужно было только знать ответ для себя, где n - число будущих поисков для этого сделано кем-либо.)

Тимоти Свон
источник

Ответы:

23

man ./named.8будет работать. manпримет имя файла в качестве аргумента, но если аргумент «выглядит как» имя man-страницы, он будет считать, что это так, а не проверять файл с таким именем. Добавляя ./ссылку на файл в текущем каталоге, вы даете понять, что это имя файла, и поэтому manбудете обращаться с ним как с таковым. Вы также можете использовать полный абсолютный путь.

Hobbs
источник
Это хорошо. Так хорошо, что это плохо. Теперь я не знаю, выбрать ли ваш ответ или Lok Lam Chengответ.
Тимоти Свон
@TimothySwan не беспокоит меня так или иначе. -lвыглядит как хороший выбор. Но для многих вещей, которые пытаются угадать, является ли что-то имя файла или нет, стоит знать, что a ./может вам помочь. например, если у вас есть файл с именем, -xи что-то настаивает на том, что он думает, что это флаг, потому что он начинается с -ну, его называют, ./-xи он больше не начинается -.
Хоббс
@TimothySwan: FWIW, ответ @hobbs работает macos, тогда как другой ответ (используя -lаргумент) - нет.
Симус
19

Вы можете открыть локальный файл, named.8используя следующую команду: man -l named.8

Ссылка: http://man7.org/linux/man-pages/man1/man.1.html

Лок Лам Ченг
источник
2
Да. Activate "local" mode. Format and display local manual files instead of searching through the system's manual collection.Derp. Но вы должны признать , что man pageдля manпереполнена.
Тимоти Свон
8

.8Часть имени страницы указывает , что это в разделе 8 человеко - страниц. Раздел #8- это раздел man-страницы, относящийся к командам системного администрирования ... обычно это команды, принадлежащие или управляемые пользователем root.

Команда manбудет загружать эту страницу, пока она находится в правильном manpath. Для Ubuntu этот путь настроен в /etc/manpath.config.

Вы найдете в /usr/share/manкачестве одного из местоположений manpath. Если вы поместите этот файл (named.8) в /usr/share/man/man8раздел, его можно загрузить с помощью команды:

$ man named

Это при условии, что файл находится:

/usr/share/man/man8/named.8

Вы можете более конкретно загрузить этот раздел с помощью этой команды (которая загрузит ту же страницу:

$ man 8 named

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

Если вы правильно скомпилируете и установите пакет github, он поместит руководство в одну из папок manpath и будет загружен одной из следующих двух команд:

$ man named
$ man 8 named

Вторая из двух команд указывает (как ваш вопрос спрашивает), как открыть файл .8 .

Конечно, вы можете получить много других подробностей о командах и структуре man-страницы с помощью команд:

$ man man
$ man manpath

Каждая из страниц документа будет иметь ссылки внизу для более подробного объяснения других связанных команд, из которых вы можете выполнить следующие:

$ man [name of other references in the page]

Другие способы вызова man-страниц / man-файлов включают в себя:

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

$ man /usr/share/man/man8/named.8
$ man ./named.8

Так как named.8 не существует в стандартной установке Ubuntu, вы можете протестировать эту опцию на странице, которая действительно существует ( /usr/share/man/man8/apt.8.gz):

$ man /usr/share/man/man8/apt.8.gz
$ man ./apt.8gz

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

Заметка

Относительно вашего поиска в Google по .8расширению ваши хиты были бы более конкретными для вашего вопроса, если бы вы поставили кавычки (") вокруг части вопроса" .8 ". Поскольку вы работали со страницей руководства, включая слово Человек в фильтре был бы еще лучше.

Этот форматированный вопрос может помочь при следующем поиске в Google:

как открыть файл ".8" ​​man

Или, используя тот же фильтр поиска, который вы установили для своего вопроса AU:

Как открыть файл .8 с человеком?

Л.Д. Джеймс
источник
2

Хотя другие ответы верны, для многих файлов вы можете попробовать универсальное решение: если вы lesspipeустановили и активировали, вы можете сделать:

less some_file.8

и получите форматированный вывод. Если вы lesspipeустановили, но не активировали по какой-либо причине, вам нужно будет запустить eval $(lesspipe.sh)сначала.

viraptor
источник