如何阅读Linux man页面?

23

每当我遇到一些命令很困惑时,我都会查找 man 手册。有时候它能解决我的问题,但大多数情况下它只会让我更加困惑。

我知道 man 手册被分成了不同的部分: NAME, SYNOPSIS, DESCRIPTION, OPTIONS, EXPRESSIONS, EXAMPLES 等等。但是,我不知道所有选项的意思。例如,每个选项应该具有多少参数,它们之间是否有依赖关系等等。

请问有人可以为我澄清这个问题吗?

是否有相关文档可供参考呢?


9
也许阅读《慢慢》会对你有所帮助。 - devnull
Stack Overflow是一个关于编程和开发问题的网站。这个问题似乎不属于编程或开发范畴。请参阅帮助中心中的我可以在这里问什么样的问题。也许超级用户Unix&Linux Stack Exchange更适合提问。 - jww
https://unix.stackexchange.com/q/193815/34720 - user2231796
因为某种原因被踩了,以示惩罚。 - tink
4个回答

14

如何高效阅读man手册

除了Laxmikant的回答,我想补充一些可以使您更快、更高效地阅读man手册的技巧。

您可以使用各种类似Vim的快捷键来实现更快的导航。

下面是一些重要的例子:

  • 按下/并输入您想搜索的关键字,然后按Enter键。它将突出显示第一个结果。接下来,您可以通过按n前往下一个搜索结果,按Shift+n返回上一个搜索结果

  • 如果您正在阅读一个非常长的页面,并且需要在几个部分之间来回切换,请使用标记。假设我在man页面的某个位置上。为了标记这个位置,我按m,然后按一些键,比如1。现在,位置已保存在标记1上。如果我滚动到其他地方,我需要重新访问这个位置,只需按a,然后按1

  • 使用du向下/向上半页滚动。

并且请记住,要从上述任何命令/模式中退出,键是esc,当然。

更新:使用Vim阅读man手册

为了更加高效,您可以直接使用Vim,例如:

man ls | vi -

甚至更好的是,在您的~/.bashrc文件中定义一个函数(如果您正在使用Bash):

vman() { vim <(man $1); }

来源: https://dev59.com/M2Qn5IYBdhLWcg3wj3zz#25057995


4
好的建议。可以添加 b 键来返回(上一页),添加 1G 键返回到页面顶部。此外,如果您不知道要使用的命令的确切名称,但是知道与 USB 相关,您可以使用 man -k USB 获取适当页面列表。 - Mark Setchell
谢谢你把那个加上 :) - shivams
还有不同的man页面快捷键。在Debian中,要向下/向上滚动一行,您必须像在vim中按j/k,而在Ubuntu中,键如Emacs中的C-n/C-p。您可能希望添加如何在man中配置类似于vim的键,因为这样更容易按。 - Hi-Angel
1
非常有用。我认为区别在于不同的分页器,因此不是 man 的一部分。使用 vim 查看 man 页面可以提高效率。 - Boyang

8

所有的man页都遵循一个通用的布局,这个布局针对简单的ASCII文本显示进行了优化,可能没有任何形式的高亮或字体控制。可能包括以下部分:

NAME

命令或函数的名称,后跟一行简短的描述其作用。
SYNOPSIS

对于一个命令,需要提供详细的运行方法和可用的命令行选项。对于程序函数,则需要列出其参数列表以及包含其定义的头文件。

DESCRIPTION

该命令或函数的文本描述其功能。
EXAMPLES

一些常见用法的示例。

SEE ALSO

一个相关命令或函数的列表。 其他部分可能也存在,但这些在man页中没有很好的标准化。常见的例子包括:OPTIONSEXIT STATUSENVIRONMENTBUGSFILESAUTHORREPORTING BUGSHISTORYCOPYRIGHT。 另请参阅维基百科上有关Man页面的信息:Man page

4

1

没有比手册页更好的东西来教你使用Linux了。另一个替代man页面的命令是info,但它显示的内容与man相同。只需反复阅读man页面,直到理解为止,或者最后您可以做的是搜索该命令的示例。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接