Answers:
首先,找出您的手册页属于哪个部分。如果它是命令,则可能属于section 1。您可以阅读该命令的手册页,man
以查看不同部分的说明及其相应的编号。
将您的手册页复制到/usr/local/share/man/man1/(1如果需要,请更改为您的部分编号)。您也可以将其安装到/usr/share/man/man1/,但是最佳做法local是在不使用APT软件包管理器的情况下使用目录来安装文件:
sudo cp examplecommand.1 /usr/local/share/man/man1/
运行mandb命令。这将更新man的内部数据库:
sudo mandb
而已!您应该能够通过运行以下命令来查看手册页:
man 1 examplecommand
/usr/local/manPATH中建议的手册页存储在中/etc/manpath.config。
如果只需要在本地安装手册页:
如果MANPATH未设置,或包含空组件(即以:,结束:或包含::),则<path>/share/man只要<path>/bin是的一部分PATH,都<path>将自动搜索的手册页,以获取的所有值。
这提供了一种非常简单的方法来添加本地安装软件的手册页。还有在一些细节man manpath和/etc/manpath.config,但我没有看到通用映射提及任何从<path>/bin到<path>/share/man。
MANPATH=<local path to the man pages>:$MANPATH了您的${HOME}/.bashrc(非登录会话)或${HOME}/.profile(登录会话)。就我而言,我在中建立了手册页的本地目录${HOME}/share/man/,它模仿了经典的Linux文件系统。我创建了${HOME}/share/man/man.1,然后examplecommand.1在程序安装程序放置文件的位置(配置“前缀”)中包含指向该文件位置的符号链接。启动会man examplecommand找到相应的手册页。这样,安装是本地的,但不是系统范围的。
<path>/bin-> <path>/share/man存在。在上执行strace(1)man时MANPATH=:/nonexistingdir,我看到以下内容:<path>/bin--> <path>/man 这在Debain Buster系统上。
上面@ ntc2的答案是人们应该关注的一个问题。我想添加一些额外的评论,这些评论不适用于评论部分:
@ ntc2的方法为人们只需要为本地二进制文件设置PATH(他们已经期望的)提供了一条路径。
但是,我不认为通用映射<path>/bin-> <path>/share/man存在于中的所有路径$PATH。当$PATH问题为时,似乎避免了这种特定的映射$HOME/bin。在上执行strace(1)man时MANPATH=:/nonexistingdir,我看到以下查询:
对于$PATH那不是的任何元素$HOME/bin
<path>/bin -> <path>/man<path>/bin -> <path>/bin/man<path>/bin -> <path>/share/man<path>/bin -> <path>/bin/share/man对于 $HOME/bin
$HOME/bin -> $HOME/man我不知道为什么它会跳过其他人。这是在Debian Buster系统上。在其他系统上可能有所不同。
对我来说,这意味着安装手册页的最安全路径是<path>/man,因为可以保证可以找到该手册页$PATH。
sudo?