linux man
man是Linux的一个非常强的的命令,它的全称为manual(手册)。有了它不用联网,轻松获取相关信息
man手册章节组成
man手册通常由多个类型章节组成,章节类型定义如下
章节 |
内容 |
中文 |
1 |
Executable programs or shell commands |
可执行程序或shell命令 |
2 |
System calls (functions provided by the kernel) |
有内核提供的系统调用 |
3 |
Library calls (functions within program libraries) |
应用库提供的函数 |
4 |
Special files (usually found in /dev) |
特殊文件,通常是/dev下的 |
5 |
File formats and conventions eg /etc/passwd |
/etc/passwd 等人类可读的文件的格式说明 |
6 |
Games |
游戏 |
7 |
Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7) |
文件系统标准描述,网络协议,ASCII 和其他字符集,还有你眼前这份文档以及其他东西 |
8 |
System administration commands (usually only for root) |
系统管理命令,通常只有root用户才能使用 |
9 |
Kernel routines [Non standard] |
内核章节,非标准的弃用 |
man手册约定段定义
Conventional section names include NAME, SYNOPSIS, CONFIGURATION, DESCRIPTION, OPTIONS, EXIT STATUS, RETURN VALUE, ERRORS, ENVIRONMENT, FILES, VERSIONS, CONFORMING TO, NOTES, BUGS, EXAMPLE, AUTHORS, and SEE ALSO.
-
总览 SYNOPSIS 简要描述命令或函数接口。
对命令,显示他的命令和参数(包括各种选项);黑体表示各种参数,下划线(或斜体字)表示可以替换的选项;方括号[]中的是可选项,竖线 | 用于把几个选项间隔开,小括号()中的部分可以自动重复。 对函数,显示需要的数据声明或需 #include 包含的项目,后跟函数声明。
-
描述 DESCRIPTION 解释命令、函数或格式的用途。
说明其如何与文件及标准输入交互,他们的标准输出及标准错误。必须要指明的细节。描述一般情况。 选项和参数信息放在 OPTIONS(选项)段。 如果有语法说明和一些复杂的设定,建议把它们放到 USAGE(用法)段(本段中最好只写一个概要)。
-
返回值 RETURN VALUE 列出程序或函数会返回的值,指出引发返回值的条件或原因。
-
退出状态 EXIT STATUS 列出可能的退出状态的值,指出引起返回的程序或原因。
-
选项 OPTIONS 指出程序可用的选项,及其作用。
-
用法 USAGE 描述程序的较高级的使用方法。
-
示例 EXAMPLES provides one or more examples describing how this function, file or command is used.
-
文件 FILES 列出程序或函数使用到的文件 比如配置文件、启动文件和程序直接操作的文件。
给出文件的绝对路径,使用安装程序调整这些路径以使其与用户的实际情况相符。对大多数程序来说,缺省的安装路径是 /usr/local,所以你的文件要与此一致。
-
环境 ENVIRONMENT 列出影响你的程序的所有环境变量,并说明影响的原因。
-
诊断 DIAGNOSTICS 写出常会出现的错误概述,并说明解决的办法。 你无需解释系统错误信息或信号, 除非它们会影响到您的程序。
-
安全 SECURITY 讨论安全问题和相关话题。对应予避免的配置和环境,可能有安全隐患的命令等等给出警告,特别是当它们不是很明显时。 单独用一段来讨论安全并不必要;如果比较好理解的话,把它放在其他段中 (比如 描述或 用法 段)。但是,最好加上它。
-
遵循 CONFORMING TO 描述它实现的任何标准或约定
-
注意 NOTES 提供杂项注意事项
-
BUGS 列出局限、已知的缺点或不便之处,还有其他可能存在的问题。
-
作者 AUTHOR 列出程序或文件作者,联系办法等。
-
参见 SEE ALSO 以字母顺序列出相关的手册页(man pages)。通常来讲,这是一个手册页的最后一段。
在系统上安装man手册
-
在线手册
- http://www.tin.org/bin/man.cgi
- http://man.he.net
-
源码安装
-
https://github.com/man-pages-zh/manpages-zh 中文版本
-
http://www.kernel.org/doc/man-pages/
-
下载安装包 http://www.kernel.org/pub/linux/docs/man-pages/
-
安装,进入解压后的文件夹,make help
,make help-variables
可以获取帮助,根据需要设置变量,sudo make install
默认安装到/usr/local
-
也可以不安装使用,man -M ~/man-pages-6.04 命令
man -M 路径 定义一组查找man手册页的目录。如果没有指定此参数,系统环境变量 MANPATH将使用。 如果查无到此环境变量,则按默认 /etc/man.config 文件中指定的查找。一个空的 MANPATH 子字 符串表示使用默认清单。
-
CentOS7
sudo yum install man-pages
-
sudo yum install man-pages-zh-CN
中文手册,通常版本较低
-
alias cman='man -M /usr/share/man/zh_CN'
使用中文手册时用别名cman即可,比如cman read
-
Ubuntu
sudo apt install manpages
sudo apt install manpages-zh
常用文档的安装
- CentOS7
-
yum install libstdc++-docs
c++ std库文档
-
yum install libpcap
获取filter规则文档,如man pcap-filter
获取tcpdump过滤条件规则说明文档
-
man ascii
查看ASCII表
- Ubuntu
man常用指令
-
man [section] title
查询指定章节类型的title内容,section可选,不指定,则安装类型顺序显示第一个,比如sleep有(1)(1p)(3)(3p)三个章节的文档,那么man sleep
等同于man 1 sleep
-
man -aw <指令>
显示哪些section课提供指令的查询
# man -f sleep
sleep (1) - delay for a specified amount of time
sleep (1p) - suspend execution for an interval
sleep (3) - sleep for the specified number of seconds
sleep (3p) - suspend execution for an interval of time
# man -aw sleep
/usr/share/man/man1/sleep.1.gz
/usr/share/man/man1p/sleep.1p.gz
/usr/share/man/man3/sleep.3.gz
/usr/share/man/man3p/sleep.3p.gz
-
man -k [apropos options] regexp ...
根据正则表达式搜索所有相关内容
# man -k .*cpy
BUF_strlcpy (3ssl) - standard C library equivalents
CRYPTO_THREADID_cpy (3ssl) - OpenSSL thread support
memccpy (3) - copy memory area
memccpy (3p) - copy bytes in memory
memcpy (3) - copy memory area
memcpy (3p) - copy bytes in memory
mempcpy (3) - copy memory area
stpcpy (3) - copy a string returning a pointer to its end
stpncpy (3) - copy a fixed-size string, returning a pointer to its end
strcpy (3) - copy a string
strcpy (3p) - copy a string
strncpy (3) - copy a string
strncpy (3p) - copy part of a string
wcpcpy (3) - copy a wide-character string, returning a pointer to its end
wcpncpy (3) - copy a fixed-size string of wide characters, returning a pointer to its end
wcscpy (3) - copy a wide-character string
wcscpy (3p) - copy a wide-character string
wcsncpy (3) - copy a fixed-size string of wide characters
wcsncpy (3p) - copy part of a wide-character string
wmemcpy (3) - copy an array of wide-characters
wmemcpy (3p) - copy wide characters in memory
wmempcpy (3) - copy memory area
参考与延伸阅读