联机帮助页最后一行(或页脚)的约定是什么

联机帮助页最后一行(或页脚)的约定是什么

我想知道在哪里可以找到有关手册页最后一行的含义或约定的文档,浏览手册页 for man 没有帮助。例如:

…$ man top|tail -n 1
procps-ng                       July 2014                          TOP(1)

…$ man rm|tail -n 1
GNU coreutils 8.25               February 2017                           RM(1)

关于TOP命令:

  • procps-ng:这是 top 命令所属的模块或工具系列吗?
  • 2014年7月:这是文档编写的日期还是该版本 top 的发布日期?
  • 顶部(1):我猜这是对联机帮助页本身的自引用。

答案1

假设它是使用 Linux 上的 GNU 工具生成的,页眉和页脚都一起指定为.TH宏的参数。从man 7 groff_man:

.TH title section
   [footer-middle] [footer-outside] [header-middle] Define the
  title of the man page as title and the section as section.
  See man(1) for details on the section numbers and suffixes
  applicable to your system.  title and section are positioned
  together at the left and right in the header line (with
  section in parentheses immediately appended to title).
  footer-middle is centered in the footer line.  footer-outside
  is positioned at the left in the footer line (or at the left
  on even pages and at the right on odd pages if double-sided
  printing is active).  header-middle is centered in the header
  line.  If section is a simple integer between 1 and 9
  (inclusive), or is exactly “3p”, there is no need to specify
  header-middle; the macro package will supply text for it.

公约的其余部分给出了man 7 man-pages:

Title line
   The first command in a man page should be a TH command:

          .TH title section date source manual

   where:
          title     The title of the man page, written in all caps
                    (e.g., MAN-PAGES).

          section   The section number in which the man page should be
                    placed (e.g., 7).

          date      The date of the last nontrivial change that was made
                    to the man page.  (Within the man-pages project, the
                    necessary updates to these timestamps are handled
                    automatically by scripts, so there is no need to
                    manually update them as part of a patch.)  Dates
                    should be written in the form YYYY-MM-DD.

          source    The source of the command, function, or system call.

                    For those few man-pages pages in Sections 1 and 8,
                    probably you just want to write GNU.

                    For system calls, just write Linux.  (An earlier
                    practice was to write the version number of the
                    kernel from which the manual page was being
                    written/checked.  However, this was never done
                    consistently, and so was probably worse than
                    including no version number.  Henceforth, avoid
                    including a version number.)

                    For library calls that are part of glibc or one of
                    the other common GNU libraries, just use GNU C
                    Library, GNU, or an empty string.

                    For Section 4 pages, use Linux.

                    In cases of doubt, just write Linux, or GNU.

          manual    The title of the manual (e.g., for Section 2 and 3
                    pages in the man-pages package, use Linux
                    Programmer's Manual).

相关内容