以下内容引用自yzh的PA实验课程网站,并有少量修改和补充。 这是一个man的使用教程,同时给出了一个如何寻找帮助的例子。
因为课程实验所迫,你不得不使用Linux,不得不使用十分落后的命令行。实验内容大多数都要在命令行里进行,面对着一大堆陌生的命令和参数。
Linux提供了丰富的帮助手册,当你需要查看某个命令的参数时不必到处上网查找,只要man一下即可。
$ man
What manual page do you want?
For example, try 'man man'.
根据提示输入
敲了回车之后,man展示了关于man的全部文档。
MAN(1) Manual pager utils MAN(1)
NAME
man - an interface to the system reference manuals
SYNOPSIS
man [man options] [[section] page ...] ...
man -k [apropos options] regexp ...
man -K [man options] [section] term ...
man -f [whatis options] page ...
man -l [man options] file ...
man -w|-W [man options] page ...
...
很快,你已经看到"最后一行"了。"最后一行"里面含有一些信息:
Manual page man(1) line 1 (press h for help or q to quit)
按下h进入"SUMMARY OF LESS COMMANDS",文档详细描述了如何使用man,带有'*'标记的命令可以在前面跟一个数,这时命令的行为在括号里给出。
一边阅读帮助,一边尝试新的命令,虽然记不住这么多命令,但可以随时来查看帮助。掌握了一些基本的命令之后,按q可以离开帮助。
整个manual可以分成9大类,每个manual page都属于其中的某一类,一个manual page主要包含以下的小节:
EXIT STATUS - 退出状态,这是一个返回给父进程的值
SEE ALSO - 功能或操作对象相近的其它命令
在EXAMPLES小节中有一个使用-k的例子:
你阅读这个例子的解释: 搜索和printf相关的manual page。还是不太明白这是什么意思,于是你退出man,在命令行中输入
发现输出了很多和printf相关的命令或库函数,括号里面的数字代表相应的条目属于manual的哪一个大类。例如printf (1)是一个shell命令,而printf (3)是一个库函数。 要访问库函数printf的manual page,你需要在命令行中输入
当你想做一件事的而不知道用什么命令的时候,man的-k参数可以用来列出候选的命令,然后再通过查看这些命令的manual page来学习怎么使用它们。
接下来,你又开始学习man的其它功能...
到这里,你应该掌握man的用法了。 你应该经常来拜访ta,因为在很多时候,ta总能给你提供可靠的帮助。
在这个励志的故事中,你学会了:
于是,你就这样带着man踏上了Linux之旅...