您的位置:首页 > 运维架构 > Linux

学习如何高效地使用 man 页 | Linux 中国

2017-12-23 00:00 1116 查看

一个标准的 man 页分成很多个部分,每部分都有一个独立的标题。当你想查看特定的标志/选项时,可能需要向下滚动很长时间才能找到。这是个效率低下而且很耗时间的过程。-- Sk

本文导航◈ 学习高效地使用 Man 页10%◈ 基础用法11%◈ 回忆起忘记的命令22%◈ 在 man 页中搜索40%◈ 不打开 man 页而进行搜索61%◈ 将完整的 man 页导出到文本文件中81%编译自 | https://www.ostechnix.com/learn-use-man-pages-efficiently/ 
 作者 | Sk
 译者 | lujun9972不久前,我们发布了一篇简短的指引描述了如何轻易地回忆起忘记的 Linux 命令 [1]。那篇指引对于无法记住命令的人来说真的非常有用。今天,我们就来学习一下如何高效而又迅速地从 man 页中获取你所需要的信息。如你所知,一个标准的 man 页分成很多个部分,每部分都有一个独立的标题。当你想查看特定的标志/选项时,可能需要向下滚动很长时间才能找到。这是个效率低下而且很耗时间的过程。这也是为什么学会高效使用 man 页来精确定位你想要的内容。在本文中,我会分享一些常用的跟 man 页相关的重要技巧。学习高效地使用 Man 页基础用法我们都知道,我们可以使用类似下面的命令来打开关于某个命令(比如 
mkdir
)的 man 页:
man mkdir


可以使用 
空格
d
b
 以及上下箭头等来浏览 man 页。要跳转道 man 页的末尾,可以按 
End
 键而想跳转到 man 页的头部则可以按 
Home
 键。在当前打开的 man 页中按下 
h
 键会显示所有有用的键盘快捷键和一般用法。(LCTT 译注:这些快捷键其实是 man 所使用的 less 分页器的快捷键)

按 
q
 可以退出 man 页。回忆起忘记的命令对于那些不知道想要哪个命令的家伙,可以去查看一下我第一段中提到的那个链接。使用 man 页我们也能做到这一点。假设说,你想要创建一个目录,而你忘记了使用哪个命令来创建目录。为了回忆起那个忘记的命令,可以将 man 和 
grep
 命令联用:
man -k directory | grep create


输出结果为:
CURLOPT_NEW_DIRECTORY_PERMS (3) - permissions for remotely created directories


libssh2_sftp_mkdir_ex (3) - create a directory on the remote file system


mkdir (2) - create a directory


mkdirat (2) - create a directory


mkdtemp (3) - create a unique temporary directory


mkdtemp (3p) - create a unique directory or file


mkfontdir (1) - create an index of X font files in a directory


mklost+found (8) - create a lost+found directory on a mounted Linux second extended file。。。


mkstemp (3p) - create a unique directory


mktemp (1) - create a temporary file or directory


pam_mkhomedir (8) - PAM module to create users home directory



你只需要阅读一下每个命令的描述然后挑选出合适的命令就行了。啊,现在你记起来了。
mkdir
 正式你想要的,对吧?就是那么简单。在 man 页中搜索若你在 man 页中想要查找特定字符串。只需要输入 
/
 (前斜线)再加上你想要搜索的字符串,像这样:
/<search_string> 或 <pattern>


假设你正在查看 
mount
 命令的 man 页,想要寻找关于 
-bind
 选项的相关信息。可以输入:
/bind



当前 man 页中任何匹配搜索字符串的内容都会被高亮显示。

按下 
n
 和 
SHIFT+n
 来查看下一个/上一个匹配的地方。
/
 模式(或者说字符串)会向前搜索匹配行。你也可以使用 
?
 模式进行向后搜索。这当你在 man 页的末尾或中间位置时非常有用。
?bind


若想只显示匹配行,输入:
&bind



使用这种方法,你无需使用 
n
 和 
SHIFT+n
 来滚动到下一个/上一个匹配的位置。
&
 模式只会显示那些包含搜索内容的行,其他的内容全都被省略掉。不打开 man 页而进行搜索也可以在不打开 man 页的前提下搜索指定选项的信息。比如,你想了解 
mkdir
 命令中的 
-m
 选项的相关信息。可以运行:
man mkdir | grep -e '-m'


或者,
man mkdir | grep -- '-m'



这个命令会显示出 
mkdir
 命令 man 页中第一次出现 
-m
 时的内容。从上面命令中我们可以看到 
-m
 表示的是 “MODE”(
chmod
)。如果你想阅读 
mkdir
 命令的完整 man 页,但是要跳过第一次出现 
-m
 之前的内容,可以使用下面命令:
man mkdir | less +/-m



这是另一个例子:
man mount | less +/--bind



按下 
n
 或 
SHIFT+n
 可以浏览下一个/上一个匹配的位置。参考阅读:每个 Linux 用户都应该知道的 3 个 man 页替代品[2]。将完整的 man 页导出到文本文件中我们可以将指定命令的完整 man 页导出成文本文件。方法是运行下面命令:
man mount > mount.txt


该命令会将 
mount
 命令的 man 页导出到当前目录的 
mount.txt
 文件中。也可以获取一个简化版的 man 页,没有退格和下划线,方法是使用下面命令。
man mount | col -b > mount.txt


要了解更多关于 man 页的详细信息,运行:
man man


该命令会显示出关于 man 的 man 页。这些技巧都很基础但很实用。它们会节省你很多的时间而且能免去很多的滚动操作。今天的内容就到这了。希望对你有帮助。更多好文即将到来。准备好哦!Cheers!(题图:Pixabay, CC0)via: https://www.ostechnix.com/learn-use-man-pages-efficiently/作者:SK[4] 译者:lujun9972 校对:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出LCTT 译者

lujun9972 ? ? ?共计翻译:29 篇贡献时间:25 天
推荐文章< 左右滑动查看相关文章 >









点击图片、输入文章 ID 或识别二维码直达原文链接请访问“原文链接”获得可点击的文内链接、全尺寸原图和相关文章。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: