Linux-查看C语⾔⼿册及man的特殊⽤法
man命令可以查看c语⾔库函数的函数原型, ⽐如
$ man malloc
如果显⽰ "No manual entry for malloc", 则需要安装 "man-pages"
sudo yum -y install man-pages
Linux 中的 man 就是 manual 的缩写, ⽤来查看系统中⾃带的各种参考⼿册, 但是⼿册页分为好⼏个部分,如下所⽰:(注:⼿册页, 很重要的,⼀般我们也都没有⽤上,不过有时候, 你就会发现你⽤上了)
1.Executable programs or shell commands
2.System calls (functions provided by the kernel)
3.Library calls (functions within program libraries)
4.Special files (usually found in /dev)
5.File formats and conventions eg /etc/passwd
6.Games
7.Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7)
8.System administration commands (usually only for root)
9.Kernel routines [Non standard]
----------------------
1是普通的命令
2是系统调⽤, 如open, write之类的(通过这个, ⾄少可以很⽅便的查到调⽤这个函数, 需要加什么头⽂件)
3是库函数, 如printf, fread
4是特殊⽂件, 也就是/dev下的各种设备⽂件
5是指⽂件的格式, ⽐如passwd, 就会说明这个⽂件中各个字段的含义
6是给游戏留的, 由各个游戏⾃⼰定义
7是附件还有⼀些变量, ⽐如向environ这种全局变量在这⾥就有说明
8是系统管理⽤的命令, 这些命令只能由root使⽤, 如ifconfig
在shell中输⼊ man+数字+命令/函数即可以查到相关的命令和函数, 若不加数字, 那Linux man命令默认从数字较⼩的⼿册中寻相关命令和函数
例如:我们输⼊ man ls, 它会在最左上⾓显⽰“LS(1)”, 在这⾥, “LS”表⽰⼿册名称, ⽽“(1)”表⽰该⼿册位于第⼀节章, 同样, 我们输⼊“man ifconfig”它会在最左上⾓显⽰“IFCONFIG(8)”, 也可以这样输⼊命令:“man [章节号] ⼿册名称”
man是按照⼿册的章节号的顺序进⾏搜索的, ⽐如:man sleep, 只会显⽰sleep命令的⼿册, 如果想查看库函数sleep, 就要输⼊:man 3 sleep man -f command 显⽰man程序的所有⼿册例如:
  man -f kill  man n command 显⽰指定章节的⼿册
  man -a command 显⽰所有章节的⼿册
  man -w command 显⽰⼿册所在的路径
  man -aw command 结合-a参数显⽰所有章节的⼿册路径
⼿册页⼀般由以下⼏部分组成:
NAME 命令名称  SYNOPSIS 命令的语法格式  DESCRIPTION 对命令功能的描述
OPEIONS 说明该命令所提供的选项和参数    EXAMPLES 对命令如何使⽤给出的例⼦ FILES 该⼿册页的默认位置
printf输出格式linux
AUTHOR 该软件的作者  REPORTING BUGS 告诉⽤户将他们发现的BUGS通过邮件发送给开发者    COPYRIGHT 版权信息SEEALSO 与该程序有关的其他程序
如:若是以mkdir为例的话, 第⼀⾏中出现的MKDIR(1)表⽰该命令属于Section 1, 为⽤户命令, 类似的man apt-get会看到APT-GET(8), 表⽰apt-get命令为系统管理⼯具
man程序是基于less命令的因此less程序的操作命令都可以在man pages中使⽤