Linux man 使用详解(转)

1)所有的手册页都属于一个特定的领域,用一个字符来表示。
Linux下最通用的领域及其名称及说明如下:
-----------------------------
领域 名称 说明
1 用户命令, 可由任何人启动的。
2 系统调用, 即由内核提供的函数。
3 例程, 即库函数。
4 设备, 即/dev目录下的特殊文件。
5 文件格式描述, 例如/etc/passwd。
6 游戏, 不用解释啦!
7 杂项, 例如宏命令包、惯例等。
8 系统管理员工具, 只能由root启动。
9 其他(Linux特定的), 用来存放内核例行程序的文档。
n 新文档, 可能要移到更适合的领域。
o 老文档, 可能会在一段期限内保留。
l 本地文档, 与本特定系统有关的。
------------------------------
例如:man ls就会有LS(1)

2)man的一些常用参数和用法
man -a cmd
打开所有领域内的同名帮助,例如 man fam ,你首先会进入一个fam(1M)的命令版fam帮助,你再按q键
就会进入FAM(3X),库函数版的帮助

man -aw cmd
显示所有cmd的所有手册文件的路径,如 man -aw fam 就是
/usr/share/man/man1/fam.1m.gz
/usr/share/man/man3/fam.3x.gz

man 领域代号 cmd
直接指定特定领域内搜索手册页,如 man 3 fam 直接进入库函数版的帮助

man -M cmd
指定手册文件的搜索路径,如 man -M /home/mysql/man mysql 显示的就是你安装的mysql的帮助,
而不是系统自带的旧版mysql的帮助

man cmd| col -b > cmd.txt
把man手册信息输出到文本文件

LANG=语言代号
man -w cmd
man 特定语言manpage文件的路径
查看特定语言版本的手册页
例如,要查看mplayer的中文man
shell> LANG=zh
shell> man -w mplayer
/usr/share/man/zh/man1/mplayer.1.gz
新开一个shell窗口(或在原窗口 shell> LANG=en_US.UTF-8)
shell> man /usr/share/man/zh/man1/mplayer.1.gz

3)man的配置文件/etc/man.config
如果你不想每次man cmd都要用-M指定路径,那么可以通过修改配置文件,添加内容如
MANPATH /home/mysql/man

man在各领域的搜索次序可以通过修改
MANSECT 1:8:2:3:4:5:6:7:9:tcl:n:l:p:o
实现,一般不推荐修改。
 
1.从Solaris系统中获得联机帮助
 Solaris 系统提供了非常丰富的联机帮助.这些帮助主要以两种形式存在,一种是命令的参考手册页(Reference Manual Pages,也即我们常说的man page),另外一种是Answer Book,是Sun公司的资料的电子版。
  使用Solaris联机帮助的方法:
  a. 使用Reference Manual Page
  在命令行上使用man命令:
  如:$ man ls <Enter>;  
  b. 使用Answer Book  
  在命令行上使用answerbook命令
  如:$ answerbook <Enter>;
  2. Man Page的组织
  Unix的man page是按照节(section)来组织的.当我们使用man ls的时候,会看到ls(1),这个括号中的1就表示ls的man page位于section 1。
  section通常是由一个主section名和一个可选的次section名组成.主section名通常是一个数字,次section名通常是一个或多个字母组成.
  Solaris中各 section 所对应的内容:
  1: User Commands and Utilities  
  2: System Calls  
  3: C Library Functions  
  4: File formats  
  5: Headers,tables and macros  
  6: Games and demos  
  7: Device and Network Interfaces  
  8: Maintance and Accounting commands  
  9: Device driver interfaces  
  3.Man Page的存放位置
  a.系统本身的 man page存放在/usr/share/man/man*目录中, /usr/man 是/usr/share/man的一个软链接.
  注:在安装操作系统时,man page是可选安装。如果未安装,可将其它机器上的/usr/share/man目录 mount 到本机上。或使用安装光盘将相应的package装上。  
  b.很多应用软件有自己的man page.它们的缺省的安装目录通常是/usr/local/man/man*.通常可以通过修改该软件的配置文件来指定新的安装目录(只需设置到/some/directory/man 这一层)  
  4.设置 Man Page的搜索路径
  当使用man命令查看某个命令或文件的帮助时,man要根据系统的环境变量MANPATH的值来确定搜索的路径。当MANPATH变量未设置时,man 命令缺省查找/usr/share/man目录。
  MANPATH的格式:
  MANPATH=dir1:dir2:dir3:...dirn; export MANPATH  
  设置MANPATH的方法
  (1).临时性修改MANPATH
  在命令行上输入以下命令:
  $ MANPATH=$MANPATH:/xxx/xxx/man<Enter>;  
  $ export MANPATH<Enter>;
  (2).永久性修改MANPATH
  在用户自己的 .profile文件中加入上述两行内容  
  5.man 命令的高级使用技巧
  a.使用 -s 选项明确指定man page的section 号
  如:$ man -s 4 passwd<Enter>;
-s 选项非常有用。因为man的搜索顺序是根据man.cf中的设置来进行的。当man找到一个匹配时,就不再往下找了。所以当你想查看一下/etc/passwd文件的格式而不是想了解passwd命令的使用时,光使用man passwd 你永远达不到目的。这时使用man -s 4 passwd,强制man只搜索section 4中的文件。  
  b.使用 -f 选项列出某个命令的全部man page 的一行性摘要
  该用法等同于 whatis 命令注:使用该选项或whatis命令时,要用到man的 windex数据库。如果没有windex文件,可以使用catman -w 来创建该文件。  
  如:$ whatis ls<Enter>;  
  ls    ls (1)     - list contents of directory  
  ls    ls (1b)     - list the contents of a directory  
  c.使用 -k 选项列出一行性摘要中含有给定关键字的所有命令
  该用法等同于 apropos 命令
  如:$ apropos shadow<Enter>;  
  lckpwdf lckpwdf (3c) - manipulate shadow password database lock file  
  putspent putspent (3c) - write shadow password file entry  
  pwconv pwconv (1m) - installs and updates /etc/shadow with information   from /etc/passwd  
  shadow shadow (4)   - shadow password file  
  ulckpwdf   lckpwdf (3c) - manipulate shadow password database lock file  
  d.使用 -d 选项查看man 命令的工作过程  
  6. 使用 Answer Book
  Answer Book在Solaris系统中是作为一个package而组织的,它也是系统的可选安装.  
  使用Answer book的方法  
  $ answerbook <Enter>;     * 如何使用装在其它机器上的 Answer Book?
  例如:liszt 上的用户要使用public主机上的AnswerBook
  step 1: 在 public 上执行以下命令:
  $ DISPLAY=liszt:0.0 ; export DISPLAY <Enter>;
  step 2: 在 liszt 上执行以下命令:
  $ xhost public <Enter>;
  step 3: 在 public 上执行answerbook 命令
  $ answerbook <Enter>;
posted @ 2013-02-24 11:32  在于思考  阅读(4483)  评论(1编辑  收藏  举报