名称

       man - 在线参考手册的接口   


描述

    标准库,在内核源码中是找不到的,只能在系统中查找到,如fcntl()函数,你可以用这个

    man是manual的简称,中文说法可以是手册

 Linux提供了丰富的帮助手册,当你需要查看某个命令,某个函数的使用方法时,不必在网上到处查找,只要man一下即可。

 

Linux的man手册共有以下几个章节:

1Standard commands (标准命令)[使用者在shell中可以操作的指令或可执行程序]
2System calls (系统调用)[ 系统核心可以调用的函数与工具等 ]
3Library functions (库函数) [ 一些常用的函数与函数库,大部分是C的函数库 ]
4Special devices (设备说明)[ 设备文件的说明,通常是在/dev下的文件 ]
5File formats (文件格式)[ 查看配置文件的帮助或者某些文件的格式]
6Games and toys (游戏和娱乐)
7Miscellaneous (杂项)[例如:linux文件系统,网络协议,ASCII code等等的说明 ]
8Administrative Commands (管理员命令)[ 系统管理员针对root 用户可以使用的管理命令 ]
9其他(linux特定的),跟kernel有关的文件

man手册添加与安装

ubuntu中man的手册默认情况下并没安装完全。所以用man命令查看C语言函数原型等会失败。使用以下几条命令进行完善,在联网的情况下使用以下命令搞定:
注意:在联网的情况下可以使用如下命令,因为是在线安装,如果不能联网,需要先联网。 

sudo apt-get install manpages
sudo apt-get install manpages-de
sudo apt-get install manpages-de-dev
sudo apt-get install manpages-dev    #(C语言库函数)
sudo apt-get install manpages-posix-dev  #手册页条目 man xx
sudo apt-get install glibc-doc manpages-posix-dev manpages-posix    

退出状态


       0      程序成功执行。

       1      用法、语法或配置文件出错。

       2      操作出错。

       3      子进程返回了非零的退出状态码。

       16     至少有一个页面/文件/关键词不存在或不匹配。

 

man命令的使用

命令格式:man [名称]

                  man [章节号] [名称]

  man是按照手册的章节号的顺序进行搜索的,比如:man sleep 只会显示sleep命令的手册,如果想查看库函数sleep,就要输入man 3 sleep。

  对于像open,kill这种既有命令,又有系统调用的来说,man open则显示的是open(1),也就是从最前面的section开始,如果想查看open系统调用的话,就得man 2 open

使用格式:

man printf  # 查看printf命令的帮助
man 1 printf # 意思是从man手册的第一章里面去找printf命令的帮助
man 3 printf # 从第手册的第3章去找帮助,(第3章讲的是库函数,所以这里查看到的是printf函数的帮助)
# 更多列举:
# 查看命令帮助
man ls
man sleep
# 查看库函数帮助
man 3 sleep

man 常用参数:

参数描述
-a显示所有匹配项
-d显示man查找手册文件时候,显示搜索路径信息,手册页内容
-f同命令whatis ,将在whatis数据库查找以关键字开同的帮助索引信息
-h显示帮助信息
-k同命令apropos 将搜索whatis数据库,模糊查找关键字
-t使用troff 命令格式化输出手册页 默认:groff输出格式页
-w不带搜索title 打印manpath变量 带title关键字 打印找到手册文件路径,默认搜索一个文件后停止
-W和- w相同
section搜索领域【限定手册类型】默认查找所有手册
-c显示使用 cat 命令的手册信息
-C指定man 命令搜索配置文件 默认是man.config
-K搜索一个字符串在所有手册页中,速度很慢
-M指定搜索手册的路径
-P xxx使用程序[xxx]显示手册页面 默认是less ,例如: man -P more open # 使用more显示
-B xxx使用[xxx]程序显示HTML手册页 默认是less
-H xxx使用[xxx]程序读取HTML手册,用txt格式显示,默认是cat
-p str指定通过groff格式化手册之前,先通过其它程序格式化手册
# 查看在哪些章节有指定命令的帮助[格式: man -f 命令 ]
man -f open # 查看open命令在那几个章节中有帮助文档
whatis open  # 功能和man -f open相同
#查看和命令相关的说有命令和帮助手册的章节[格式: man -k 命令 ]
man -k open
man -k close
# 和man -k 功能差不多的命名 [ apropos ]
apropos open
apropos close

man命令中的常用按键操作

按键作用
空格键向后翻一页
PgUp向上翻一页
PgDn向下翻一页
home直接前往到第一页
end直接前往最后一页
/从上往下搜索关键词,例如:/OPTIONS ,就是搜索OPTIONS
?从下往上搜索关键词,例如: ?linux
n定位到下一个搜索到的关键词
N定位到上一个搜索到的关键词
q退出man手册

man手册各模块的意义:

模块名称含义
NAME命令的名称
SYNOPSIS参数的使用方法
DESCRIPTION介绍说明
EXAMPLES实例 演示+简单说明
OVERVIEW概述
DEFAULTS默认功能
OPTIONS可用选项的说明
ENVIRONMENT环境变量
FILES用到的文件
SEE ALSO相关资料
HISTORY维护历史

安装中文man手册(不推荐因为是旧版已经过时):

1.打开终端,输入以下命令安装中文man手册

sudo apt-get install manpages-zh

2.查看man 手册安装到哪里

dpkg -L manpages-zh | less

查看到安装在/usr/share/man/zh_CN

3.设一个中文man别名 用vi打开修改 ~/.bashrc

sudo vi ~/.bashrc

在最后一行添加一个alias :

alias cman='man -M /usr/share/man/zh_CN'

4.重启一个终端就可以用cman查看中文man手册了,当然查英文手册还是用man。

命令:cman可以查看中文man手册,而man可以查看原man手册(英文)

左:cman 2 open
右:man 2 open
中文man手册只是当参考用,很多东西还是要查原版英文的man手册,所以把cman独立出来防止与原man命令冲突是有必要的。

Logo

更多推荐