如何手动安装手册页文件?


44

如何在系统范围内安装手册页文件?

例如,如果我有一个手册页文件examplecommand.1,该如何安装它以便键入内容man examplecommand进行查看?

Answers:


53
  1. 首先,找出您的手册页属于哪个部分。如果它是命令,则可能属于section 1。您可以阅读该命令的手册页,man联机帮助页图标以查看不同部分的说明及其相应的编号。

  2. 将您的手册页复制到/usr/local/share/man/man1/1如果需要,请更改为您的部分编号)。您也可以将其安装到/usr/share/man/man1/,但是最佳做法local是在不使用APT软件包管理器的情况下使用目录来安装文件:

    sudo cp examplecommand.1 /usr/local/share/man/man1/
    
  3. 运行mandb命令。这将更新man的内部数据库:

    sudo mandb
    
  4. 而已!您应该能够通过运行以下命令来查看手册页:

    man 1 examplecommand
    

参考文献:

  • 命令的手册man联机帮助页图标
  • 命令的手册mandb联机帮助页图标
  • /usr/bin/dh_installman如果您可以阅读Perl(随debhelper软件包一起安装)中的源代码。

1
如果要避免使用,有没有选择或推荐的作法sudo
Jorge Bucaran

@JorgeBucaran有关如何设置MANPATH的信息,请参见下面的答案,它允许您将手册页放在可以写入的空间中,例如$ HOME / lib / share / man或类似的地方
nealmcb

我认为您可以将手册页存储在,也可以将/usr/local/manPATH中建议的手册页存储在中/etc/manpath.config
佳诺

10

如果只需要在本地安装手册页:

如果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找到相应的手册页。这样,安装是本地的,但不是系统范围的。
XavierStuvw

这是一个非常有趣的评论,它为人们只需要为本地二进制文件设置PATH(他们已经期望的)提供了一条路径。但是,我不认为通用映射<path>/bin-> <path>/share/man存在。在上执行strace(1)manMANPATH=:/nonexistingdir,我看到以下内容:<path>/bin--> <path>/man 这在Debain Buster系统上。
阿克套

1

上面@ ntc2的答案是人们应该关注的一个问题。我想添加一些额外的评论,这些评论不适用于评论部分:

@ ntc2的方法为人们只需要为本地二进制文件设置PATH(他们已经期望的)提供了一条路径。

但是,我不认为通用映射<path>/bin-> <path>/share/man存在于中的所有路径$PATH。当$PATH问题为时,似乎避免了这种特定的映射$HOME/bin。在上执行strace(1)manMANPATH=:/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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.