适合 Linux 新手的 man page 使用手册

文章目录
  1. 1. 入门
    1. 1.1. 什么是 man page(来自 wiki)
    2. 1.2. 什么时候会使用 man page
    3. 1.3. 如何使用 man page
    4. 1.4. 操作快捷键
    5. 1.5. 代码输入标准
  2. 2. 进阶
    1. 2.1. man page 中的代号
    2. 2.2. man page 中的内容分块
    3. 2.3. man page 中的参数

请注意:本文编写于 2017-07-04,其中某些信息可能已经失去时效性。

入门

man page 新手入门

什么是 man page(来自 wiki)

手册页(英语:Manual pages,缩写 man page)是在 Unix 或类 Unix 操作系统在线软件文档的一种普遍的形式。 内容包括计算机程序(包括库和系统调用),正式的标准和惯例,甚至是抽象的概念。用户可以通过执行 man 命令调用手册页。

什么时候会使用 man page

  1. 在使用 Linux 时常常会遇到一些我们不知道具体是什么作用的命令;
  2. 想输入某个命令但是只记得命令的某一部分,例如:突然忘记了 date 怎么拼只记得 datX 则可使用 man page 来查找;
  3. 想要深入了解某个命令;

如何使用 man page

  1. 查询手册:在终端输入:man <要查询的命令(全拼区分大小写)>
  2. 模糊匹配:在终端输入:man -k <模糊匹配对象(区分大小写)>

操作快捷键

向下翻一页:空格键或 Page Down
向上翻一页:Page Up
返回首页:Home
返回尾页:End
向下查询:终端输入:/要查询的字符串
向上查询:终端输入:?要查询的字符串
结束查询:q

代码输入标准

1
2
3
# man 与要查询的命令之间有空格
# 注意:输入是区分大小写的
$ man man

知道以上这些就可以开始使用 man page 了,但你可能会在使用的过程中产生这样或那样的疑问,这时你可以继续阅读下面的进阶部分。

进阶

图片来自维基百科

上图为在终端输入:man man 后终端输入的结果,
我们以上面这张图片为例来深入的了解 man page 的进阶知识。

man page 中的代号

注意图片左上角和右上角的 man(1),我们知道 man 是命令的名称,那 (1) 又代表什么那?

它代表的是一般用户可以使用的命令,在查询数据的后面的数字是有意义的。它可以帮助我们了解或者是直接查询相关的资料。常见的几个数字的意义如下图所示:

图片来自鸟哥博客

上表中的1, 5, 8这三个号码特別重要。

man page 中的内容分块

通过终端输入:man man 的输出结果图我们能够清楚的看到输出结果的展示页面被几个单词区分为若干块,它们分别代表什么那?请看下表:

图片来自鸟哥博客

有时候除了这些外,还可能会看到 Authors 与 Copyright 等,不过也有很多时候仅有 NAME与DESCRIPTION 等部分。通常鸟哥在查询某个数据时是这样来查阅的:

  1. 先察看 NAME 的项目,约略看一下这个数据的意思;
  2. 再详看一下 DESCRIPTION,这个部分会提到很多相关的数据与使用时机,从这个地方可以学到很多小细节呢;
  3. 而如果这个指令其实很熟悉了(例如上面的 date),那么鸟哥主要就是查询关于 OPTIONS 的部分了!可以知道每个选项的意义,这样就可以下达比较细部的指令内容呢!
  4. 最后,鸟哥会再看一下,跟这个数据有关的还有哪些东西可以使用的?举例来说,上面的 SEE ALSO 就告知我们还可以利用『info coreutils date』来进一步查阅数据;
  5. 某些说明内容还会列举有关的档案(FILES 部分)来提供我们参考!这些都是很有帮助的!

man page 中的参数

man pge 语法格式:man [ -c -t Section | -k | -f -F -m -MPath -r -a ] Title

在“[]”内的表示可以省略的部分,下面就让我们来了解一下一些主要参数的意义吧:

  1. -c :显示使用 cat 命令的手册信息;
  2. -t :使用 troff 命令格式化手册信息。如果在超文本信息基中查找到手册页面,则忽略该标志。
  3. -k :显示关键字数据库中包含与作为最终参数给定的字符匹配的标题的字符串的每一行。可以输入多个标题,中间用空格隔开。要使用 -k 标志,root 用户必须以前已输入 catman -w 以建立 /usr/share/man/whatis 文件;
  4. -f :显示在关键字数据库中仅与作为最终参数给定的命令名相关的项。可以输入多个命令名,中间用空格隔开。使用该标志仅搜索命令物件。要使用 -f 标志,root 用户必须以前已输入 catman -w 以建立 /usr/share/man/whatis 文件;
  5. -F :只显示首个匹配项;
  6. -m :只在 MANPATH-M 中指定的路径中搜索;
  7. -MPath :更改 man 命令搜索手册信息的标准位置。路径是用冒号隔开的路径的列表,其中,可以使用以下特殊符号:
    1. %D - 联机帮助页的缺省 AIX? 路径。
    2. %L -与当前语言环境的 LC_MESSAGES 类别相对应的特定于语言环境的目录位置。
    3. %L -与当前 LC_MESSAGES 类别的首 2 个字符相对应的特定于语言环境的目录位置;
  8. -r :手册信息的远程搜索。如果出于某个原因,远程搜索失败,则 man 将执行本地搜索以获取请求的联机帮助页;
  9. -a :显示所有匹配项。

一般来说,鸟哥是真的不会去背指令的,只会去记住几个常见的指令而已。那么鸟哥是怎么找到所需要的指令呢?举例来说,打印的相关指令,鸟哥其实仅记得 lp(line print)而已。那我就由 man lp 开始,去找相关的说明,然后,再以 lp [tab] 找到任何以lp为开头的指令,找到我认为可能有点相关的指令后,先以 –help 去查基本的用法,若有需要再以 man 去查询指令的用法!呵呵!所以,如果是实际在管理 Linux,那么真的只要记得几个很重要的指令即可,其他需要的,嘿嘿!努力的找男人(man)吧!

最后,给大家推荐一个 man 的非常好的网站,linuxmanpages,相当于一个网页版的 Linuxman 手册。

到此有关 man page 进阶篇描述也结束了,这也意味着《Linux 之 man page 新手使用手册》到此结束,如果想要继续进阶成为大师就带上你的信心去探索吧。