Man - Linux命令 - UNIX命令

名称

man格式并显示在线手册页
manpath - 确定手册页的用户搜索路径

概要

man [ -acdfFhkKtwW ] [ --path ] [ -m system ] [ -p string ] [ -C config_file ] [ -M pathlist ] [ -P pager ] [ -S section_list ] [ section ] name ...

描述

man 格式并显示在线手册页。 如果您指定部分man只会查看手册的该部分。 名称通常是手册页的名称,通常是命令,函数或文件的名称。 但是,如果名称包含斜线( / ),则man会将其解释为文件规范,以便您可以执行man ./foo.5甚至man /cd/foo/bar.1.gz

请参阅下面的说明,了解手动页面文件的位置。

OPTIONS

-C config_file

指定要使用的配置文件; 默认是/etc/man.config 。 (见man.conf (5)。)

-M路径

指定要搜索手册页的目录列表。 用冒号分隔目录。 空列表与没有指定-M完全相同。 请参阅手册页的搜索路径

-P寻呼机

指定使用哪个寻呼机。 此选项覆盖MANPAGER环境变量,该变量又覆盖PAGER变量。 默认情况下, man使用/ usr / bin / less -isr

-S section_list

列表是以冒号分隔的手动部分列表进行搜索。 该选项覆盖MANSECT环境变量。

-一个

默认情况下, man会在显示找到的第一个手册页后退出。 使用此选项将强制man显示所有与名称匹配的手册页而不仅仅是第一个。

-C

重新设置源手册页的格式,即使存在最新的猫页面 。 如果猫页面被格式化为列数不同的屏幕,或者预格式化的页面已损坏,则这可能很有意义。

-d

不要实际显示手册页,但要打印调试信息的gobs。

-D

显示和打印调试信息。

-F

等同于whatis

-F--preformat

仅格式 - 不显示。

-H

打印单行帮助信息并退出。

-k

相当于apropos

-K

在* all *手册页中搜索指定的字符串。 警告:这可能非常慢! 它有助于指定一个部分。 (只是给出一个粗略的想法,在我的机器上,每500页手册大约需要一分钟。)

-m系统

根据给定的系统名称指定一组备用手册页进行搜索。

-p字符串

指定要在nrofftroff之前运行的预处理器序列。 并非所有的安装都会有一套完整的预处理器。 一些预处理器和用来指定它们的字母是:eqn(e),grap(g),pic(p),tbl(t),vgrind(v),refer(r)。 该选项将覆盖MANROFFSEQ环境变量。

-t

使用/ usr / bin / groff -Tps -mandoc来格式化手册页,将输出传递给stdout。 在打印之前, / usr / bin / groff -Tps -mandoc的输出可能需要通过某个过滤器或另一个过滤器。

-w或--path

不要实际显示手册页,但要打印将要格式化或显示的文件的位置。 如果没有给出参数:display(在stdout上)由man查找手册页的目录列表。 如果人行道与人有联系,那么“人行道”就相当于“人行道”。

-W

像-w一样,但是每行打印一个文件名,没有附加信息。 这在shell命令中很有用,比如man-aW man | xargs ls -l

CAT页面

人会尝试保存格式化的手册页,以便在下次需要这些页面时节省格式化时间。 传统上,DIR / manX中的页面的格式化版本保存在DIR / catX中,但是可以在/etc/man.config中指定从man目录到cat目录的其他映射。 当所需的猫目录不存在时,不会保存猫页 。 当它们被格式化为不同于80的行长度时,不会保存猫页面。当man.conf包含行NOCACHE时,不会保存猫页面。

有可能让男人对一个用户男人很感兴趣。 然后,如果一个猫目录拥有所有者man和模式0755(只能由man写),并且cat文件拥有所有者man和模式0644或0444(只能由人写入,或者根本不可写),所以普通用户不能更改cat页面或将其他文件放在cat目录中。 如果man不是suid,那么如果所有用户都应该能够离开cat页面,cat目录应该有模式0777。

即使最近的猫页面存在,选项-c也会强制重新格式化一个页面。

手动页面的搜索路径

man基于调用选项和环境变量, /etc/man.config配置文件以及一些内置约定和启发式方法,使用复杂的方法查找手册页文件。

首先,当man名称参数包含一个斜杠( / )时, man认为它本身就是一个文件规范,并且不涉及搜索。

但是,在名称不包含斜线的正常情况下, man会在各种目录中搜索可能是指定主题的手册页的文件。

如果指定-M 路径列表选项,则路径列表是由人类搜索的目录的冒号分隔列表。

如果您不指定-M但设置了MANPATH环境变量,那么该变量的值就是man搜索的目录列表。

如果您没有使用-MMANPATH指定显式路径列表,则man会根据配置文件/etc/man.config的内容开发自己的路径列表。 配置文件中的MANPATH语句标识要包含在搜索路径中的特定目录。

此外,根据您的命令搜索路径(即PATH环境变量), MANPATH_MAP语句会添加到搜索路径中。 对于可能位于命令搜索路径中的每个目录, MANPATH_MAP语句指定应添加到手动页面文件搜索路径的目录。 man查看PATH变量并将相应的目录添加到手册页文件搜索路径。 因此,通过正确使用MANPATH_MAP ,当您发出命令man xyz时,如果您发出命令xyz ,您将获得将运行的程序的手册页。

另外,对于没有 MANPATH_MAP语句的命令搜索路径中的每个目录(我们将其称为“命令目录”), man会自动查找手册页目录“nearby”,即作为子目录命令目录本身或命令目录的父目录中。

您可以通过在/etc/man.config中包含NOAUTOPATH语句来禁用自动“附近”搜索。

在上述搜索路径的每个目录中, man搜索名为topic的文件 部分 ,在部分编号上有一个可选的后缀,可能还有一个压缩后缀。 如果没有找到这样的文件,它会查找名为man Ncat N的任何子目录,其中N是手动节号。 如果该文件位于cat N子目录中, man会认为它是一个格式化的手册页文件(cat page)。 否则, 认为它是未格式化的。 在任何一种情况下,如果文件名有一个已知的压缩后缀(如.gz ), man会认为它已被压缩。

如果您想查看man (或如果)会找到特定主题的手册页,请使用--path-w )选项。

重要提示:使用man 命令%man )查看特定计算机上的命令使用方式。