Linux - man page
使用man date来查看date命令的详细信息。
lucifer@lucifer-virtual-machine:~$ man date
DATE(1) User Commands DATE(1)
# 请注意上面这个括号内的数字
NAME <==这个命令的完整全名,如下所示为date且说明简单用途为配置与显示日期/时间
date - print or set the system date and time
SYNOPSIS <==这个命令的基本语法如下所示
date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
DESCRIPTION <==详细说明刚刚语法谈到的选项与参数的用法
Display the current time in the given FORMAT, or set the system
date.
-d, --date=STRING <==左边-d为短选项名称,右边--date为完整选项名称
display time described by STRING, not 'now'
-f, --file=DATEFILE
like --date once for each line of DATEFILE
-r, --reference=FILE
display the last modification time of FILE
....(中间省略)....
# 找到了!底下就是格式化输出的详细数据!
FORMAT controls the output. The only valid option for the second
form specifies Coordinated Universal Time. Interpreted sequences
are:
%% a literal %
%a locale's abbreviated weekday name (e.g., Sun)
%A locale's full weekday name (e.g., Sunday)
....(中间省略)....
ENVIRONMENT <==与这个命令相关的环境参数有如下的说明
TZ Specifies the timezone, unless overridden by command line
parameters. If neither is specified, the setting from
/etc/localtime is used.
AUTHOR <==这个命令的作者啦!
Written by David MacKenzie.
REPORTING BUGS <==有问题请留言给底下的email的意思!
Report bugs to <bug-coreutils@gnu.org>.
COPYRIGHT <==受到著作权法的保护!用的就是 GPL 了!
Copyright ? 2006 Free Software Foundation, Inc.
This is free software. You may redistribute copies of it under the
terms of the GNU General Public License
<http://www.gnu.org/licenses/gpl.html>. There is NO WARRANTY, to
the extent permitted by law.
SEE ALSO <==这个重要,你还可以从哪里查到与date相关的说明文件之意
The full documentation for date is maintained as a Texinfo manual.
If the info and date programs are properly installed at your site,
the command
info date
should give you access to the complete manual.
date 5.97 May 2006 DATE(1)
出现的这个屏幕画面,我们称呼他为man page, 可以在里头查询他的用法与相关的参数说明。
首先,在上个表格的第一行,可以看到的是:『DATE(1)』,DATE我们知道是命令的名称, 那么(1)代表什么呢?他代表的是『一般用户可使用的命令』的意思!他可以帮助我们了解或者是直接查询相关的数据。 常见的几个数字的意义是这样的:
| 代号 | 代表内容 |
| 1 | 使用者在shell环境中可以操作的命令或可运行文件 |
| 2 | 系统核心可呼叫的函数与工具等 |
| 3 | 一些常用的函数(function)与函式库(library),大部分为C的函式库(libc) |
| 4 | 装置文件的说明,通常在/dev下的文件 |
| 5 | 配置文件或者是某些文件的格式 |
| 6 | 游戏(games) |
| 7 | 惯例与协议等,例如Linux文件系统、网络协议、ASCII code等等的说明 |
| 8 | 系统管理员可用的管理命令 |
| 9 | 跟kernel有关的文件 |
上述的表格内容可以使用『man 7 man』来更详细的取得说明。透过这张表格的说明, 未来你如果使用man page在察看某些数据时,就会知道该命令/文件所代表的基本意义是什么了。 举例来说,如果你下达了『man null』时,会出现的第一行是:『NULL(4)』,对照一下上面的数字意义,原来null竟然是一个『装置文件』!
上表中的1, 5, 8这三个号码特别重要。
man page的内容也分成好几个部分来加以介绍该命令呢!就是上头man date那个表格内, 以NAME作为开始介绍,最后还有个SEE ALSO来作为结束。基本上,man page大致分成底下这几个部分:
| 代号 | 内容说明 |
| NAME | 简短的命令、数据名称说明 |
| SYNOPSIS | 简短的命令下达语法(syntax)简介 |
| DESCRIPTION | 较为完整的说明,这部分最好仔细看看! |
| OPTIONS | 针对 SYNOPSIS 部分中,有列举的所有可用的选项说明 |
| COMMANDS | 当这个程序(软件)在运行的时候,可以在此程序(软件)中下达的命令 |
| FILES | 这个程序或数据所使用或参考或连结到的某些文件 |
| SEE ALSO | 可以参考的,跟这个命令或数据有相关的其他说明! |
| EXAMPLE | 一些可以参考的范例 |
| BUGS | 是否有相关的臭虫! |
- 先察看NAME的项目,约略看一下这个数据的意思;
- 再详看一下DESCRIPTION,这个部分会提到很多相关的数据与使用时机,从这个地方可以学到很多小细节呢;
- 而如果这个命令其实很熟悉了(例如上面的date),那么主要就是查询关于OPTIONS的部分了! 可以知道每个选项的意义,这样就可以下达比较细部的命令内容呢!
- 最后,再看一下,跟这个数据有关的还有哪些东西可以使用的?举例来说,上面的SEE ALSO就告知我们还可以利用『info coreutils date』来进一步查阅数据;
- 某些说明内容还会列举有关的文件(FILES 部分)来提供我们参考!这些都是很有帮助的!
man page常用的按键
| 按键 | 进行工作 |
| 空格键 | 向下翻一页 |
| [Page Down] | 向下翻一页 |
| [Page Up] | 向上翻一页 |
| [Home] | 去到第一页 |
| [End] | 去到最后一页 |
| /string | 向『下』搜寻 string 这个字符串,如果要搜寻 lucifer 的话,就输入 /lucifer |
| ?string | 向『上』搜寻 string 这个字符串 |
| n, N | 利用 / 或 ? 来搜寻字符串时,可以用 n 来继续下一个搜寻 (不论是 / 或 ?) ,可以利用 N 来进行『反向』搜寻。举例来说,我以 /lucifer搜寻
lucifer字符串, 那么可以 n 继续往下查询,用 N 往上查询。若以 ?lucifer向上查询 lucifer字符串, 那我可以用 n 继续『向上』查询,用 N 反向查询。 |
| q | 结束这次的 man page |
问题1:你可否查出来,系统中还有哪些跟『man』这个命令有关的说明文件呢?
使用 -f 这个选项就可以取得更多与man相关的信息,而上面这个结果当中也有提示了 (数字) 的内容, 举例来说,第二行的『 man (7) 』表示有个man (7)的说明文件存在
搜寻的顺序是记录在/etc/man.conf这个配置文件当中, 先搜寻到的那个说明档,就会先被显示出来! 一般来说,通常会先找到数字较小的那个啦!因为排序的关系啊!所以, man man 会跟 man 1 man 结果相同!
问题2:找出系统的说明文件中,只要有man这个关键词就将该说明列出来。
还有,whatis 相当于man -f,apropos 相当于man -k
Linux - man page的更多相关文章
- mkbundle(1) - Linux man page
mkbundle(1) - Linux man page Name mkbundle, mkbundle2 - Creates a bundled executable. Synopsis mkbun ...
- fork(2) - Linux man page
fork(2): create child process - Linux man page https://linux.die.net/man/2/fork fork(2) - Linux man ...
- #include <sys/epoll.h> epoll - I/O event notification facility 服务器端 epoll(7) - Linux manual page http://www.man7.org/linux/man-pages/man7/epoll.7.html
epoll使用详解(精髓) - Boblim - 博客园 https://www.cnblogs.com/fnlingnzb-learner/p/5835573.html epoll使用详解(精髓) ...
- Linux的page cache使用情况/命中率查看和操控
转载自宋宝华:https://blog.csdn.net/21cnbao/article/details/80458173 这里总结几个Linux文件缓存(page cache)使用情况.命中率查看的 ...
- dhcpd.conf(5) - Linux man page
http://linux.die.net/man/5/dhcpd.conf Name dhcpd.conf - dhcpd configuration file Description The d ...
- linux 排查page的状态问题
最近遇到一个page的释放异常的问题,堆栈如下: [ 1000.691858] BUG: Bad page state in process server.o pfn:309d22 [ mapcoun ...
- Linux下5种IO模型的小结
概述 接触网络编程,我们时常会与各种与IO相关的概念打交道:同步(Synchronous).异步(ASynchronous).阻塞(blocking)和非阻塞(non-blocking).关于概念的区 ...
- Linux 多线程应用中如何编写安全的信号处理函数
http://blog.163.com/he_junwei/blog/static/1979376462014021105242552/ http://www.ibm.com/developerwor ...
- Linux设置:环境变量
一.在相关配置文件中添加可执行文件/头文件/静态库/动态库的搜索路径 对所有用户有效在/etc/profile添加. 只对当前用户有效在Home目录下的.bashrc或.bash_profile里添加 ...
随机推荐
- Java并发框架——AQS之原子性如何保证?
在研究AQS框架时,会发现这个类很多地方都使用了CAS操作,在并发实现中CAS操作必须具备原子性,而且是硬件级别的原子性,java被隔离在硬件之上,明显力不从心,这时为了能直接操作操作系统层面,肯定要 ...
- The type org.apache.http.HttpResponse cannot be resolved. It is indirectly referenced from required
在Android 6.0(API 23)中,Google已经移除了移除了Apache HttpClient相关的类.HttpResponse类.缺失jar包使用HttpResponse等会报错: Th ...
- Swift延迟加载的一种用途
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 有以下一种情况: 我们试图用Cocoa的语音合成类NSSpee ...
- FFmpeg源代码简单分析:configure
===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...
- [ExtJS5学习笔记]第十九节 Extjs5中通过设置form.Panel的FieldSet集合属性控制多个field集合
本文地址:http://blog.csdn.net/sushengmiyan/article/details/39209533 官方例子:http://docs.sencha.com/extjs/5. ...
- MyBatis Generator For Eclipse 插件安装
由于在ORM框架MyBatis中,实现数据表于JavaBean映射时,配置的代码比较的复杂,所以为了加快开发的效率,MyBatis官方提供了一个Eclipse的插件, 我izuoyongjiushis ...
- 【一天一道LeetCode】#344. Reverse String
一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Write a ...
- HMM:隐马尔科夫模型-维特比算法
http://blog.csdn.net/pipisorry/article/details/50731584 目标-解决HMM的基本问题之二:给定观察序列O=O1,O2,-OT以及模型λ,如何选择一 ...
- JSP +MySQL实现网站的登录与注册小案例
为了练手,我就自己试着做了一个网站的登录与注册的小案例.由于没有做美化处理,所以界面并不是很好看. 网站实现的功能如下: 用户首次注册功能 用户登录功能 项目目录展示: 下面我将会分模块展示 注册模块 ...
- HTTP请求方法
HTTP请求方法 根据HTTP标准,HTTP请求可以使用多种请求方法. HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法. HTTP1.1新增了五种请求方法:OPTIONS, ...