1.指令--help
<span style="font-size:14px;">[xiaohui@localhost ~]$ date --help
Usage: date [OPTION]... [+FORMAT] # 这里有基本语法
or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] # 这是设定时间的语法
Display the current time in the given FORMAT, or set the system date.
# 底下是主要的选项说明
Mandatory arguments to long options are mandatory for short options too.
-d, --date=STRING display time described by STRING, not 'now'
-f, --file=DATEFILE like --date once for each line of DATEFILE
<span style="color:#ff0000;">....(中间省略)....</span>
-u, --utc, --universal print or set Coordinated Universal Time (UTC)
--help 显示此求助说明并离开
--version 显示版本资讯并离开
# 底下则是重要的格式 (FORMAT) 的主要项目
FORMAT controls the output. Interpreted sequences are:
%% a literal %
%a locale's abbreviated weekday name (e.g., Sun)
%A locale's full weekday name (e.g., Sunday)
<span style="color:#ff6600;">....(中间省略)....</span>
# 底下是几个重要的范例 (Example)
Examples:
Convert seconds since the epoch (1970-01-01 UTC) to a date
$ date --date='@2147483647'
<span style="color:#ff6600;">....(底下省略)....</span></span>
首先一开始是下达语法的方式 (Usage),这个 date 有两种基本语法,一种是直接下达并且取得日期回传值,且可以 +FORAMAT 的方式来显示。 至于另一种方式,则是加上 MMDDhhmmCCYY 的方式来设定日期时间。再往下 会说明主要的选项,例如 -d 的意义等等,后续又会出现 +FORMAT 的用法!从里面你可以查到我们之前曾经用过得『 date +%Y%m%d 』这个指令与选项的说明。
2.man page:这个man是manual(操作说明)
[xiaohui@localhost ~]$ 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.
Mandatory arguments to long options are mandatory for short options too.
-d, --date=STRING <==左边-d为短选项名称,右边--date为完整选项名称
display time described by STRING, not 'now'
-f, --file=DATEFILE
like --date once for each line of DATEFILE
-I[TIMESPEC], --iso-8601[=TIMESPEC]
output date/time in ISO 8601 format. TIMESPEC='date' for date only (the
default), 'hours', 'minutes', 'seconds', or 'ns' for date and time to the
indicated precision.
<span style="color:#ff0000;">....(中间省略)....</span>
# 找到了!底下就是格式化输出的详细资料!
FORMAT controls the output. Interpreted sequences are:
%% a literal %
%a locale's abbreviated weekday name (e.g., Sun)
%A locale's full weekday name (e.g., Sunday)
<span style="color:#ff0000;">....(中间省略)....</span>
ENVIRONMENT <==与这个指令相关的环境参数有如下的说明
TZ Specifies the timezone, unless overridden by command line parameters.
If neither is specified, the setting from /etc/localtime is used.
EXAMPLES <==一堆可用的范本
Convert seconds since the epoch (1970-01-01 UTC) to a date
$ date --date='@2147483647'
<span style="color:#ff0000;">....(中间省略)....</span>
DATE STRING <==上面曾提到的 --date 的格式说明!
The --date=STRING is a mostly free format human readable date string such as "Sun, 29
Feb 2004 16:21:42 -0800" or "2004-02-29 16:21:42" or even "next Thursday". A date
string may contain items indicating calendar date, time of day, time zone, day of
AUTHOR <==这个指令的作者啦!
Written by David MacKenzie.
COPYRIGHT <==受到著作权法的保护!用的就是 GPL 了!
Copyright © 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or
later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WAR‐
RANTY, 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 coreutils 'date invocation'
should give you access to the complete manual.
GNU coreutils 8.22 June 2014 DATE(1)
『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 page大致分成底下这几个部分
代号 | 内容说明 |
NAME | 简短的指令、资料名称说明 |
SYNOPSIS | 简短的指令下达语法(syntax)简介 |
DESCRIPTION | 较为完整的说明,这部分最好仔细看看! |
OPTIONS | 针对 SYNOPSIS 部分中,有列举的所有可用的选项说明 |
COMMANDS | 当这个程式(软体)在执行的时候,可以在此程式(软体)中下达的指令 |
FILES | 这个程式或资料所使用或参考或连结到的某些档案 |
SEE ALSO | 可以参考的,跟这个指令或资料有相关的其他说明! |
EXAMPLE | 一些可以参考的范例 |
在man page常用的按键
按键 | 按键说明 |
空白键 | 向下翻一页 |
[Page Down] | 向下翻一页 |
[Page Up] | 向上翻一页 |
[Home] | 去到第一页 |
[End] | 去到最后一页 |
/string | 向『下』搜寻 string 这个字串,如果要搜寻 data的话,就输入 /data |
?string | 向『上』搜寻 string 这个字串 |
n, N | 利用 / 或 ? 来搜寻字串时,可以用 n 来继续下一个搜寻 (不论是 / 或 ?) ,可以利用 N 来进行『反向』搜寻。 举例来说,我以 /date搜寻 date字串, 那么可以 n 继续往下查询,用 N 往上查询。 若以 ?date向上查询 date字串, 那我可以用 n 继续『向上』查询,用 N 反向查询。 |
q | 结束这次的 man page |
man page的资料放置,不同的distribution通常可能有点差异性。不过,通常是放/usr/share/man这个目录裡头,然而,我们可以透过修改他的man page搜寻路径来改善这个目录的问题!修改/etc/man_db.conf (有的版本为man.conf或manpath.conf或man.config等)即可!至于更多的关于man的讯息可以使用『 man man 』来查询。
搜寻特定指令/档案的man page说明文件
[xiaohui@localhost ~]$ man -f man
man (1) - an interface to the on-line reference manuals
man (1p) - display system documentation
man (7) - macros to format man pages
使用 -f 这个选项就可以取得更多与man相关的资讯,下达『 man man 』的时候找到说明档跟搜寻的顺序有关了。搜寻的顺序是记录在/etc/man_db.conf 这个设定档当中, 先搜寻到的那个说明档,就会先被显示出来! 一般来说,通常会先找到数字较小的那个,因为排序的关系!
上面的『man -f man』输出的结果中,其实输出的资料是:
- 左边部分:指令(或档案)以及该指令所代表的意义(就是那个数字);
- 右边部分:这个指令的简易说明,例如上述的『-macros to format man pages』
当使用『man -f 指令』时,man只会找资料中的左边那个指令(或档案)的完整名称,有一点不同都不行!
当使用『man -k 指令』时,man只要有关键字就将该说明列处理。
还有两个指令与man page有关,这两个指令是man的简略写法说~就是这两个:
[xiaohui@localhost ~]$ whatis [指令或者是资料] <==相当于 man -f [指令或者是资料]
[xiaohui@localhost ~]$ apropos [指令或者是资料] <==相当于 man -k [指令或者是资料]
而要注意的是,这两个特殊指令要能使用,必须要有建立 whatis 资料库才行!这个资料库的建立需要以 root 的身份下达如下的指令:
[root@localhost xiaohui]# mandb
<span style="color:#ff0000;"># 旧版的 Linux 这个指令是使用 makewhatis!CentOS7使用 mandb 了!</span>
info page是将文件资料拆成一个一个的段落,每个段落用自己的页面来撰写,并且在各个页面中还有类似网页的『超连结』来跳到各不同的页面中,每个独立的页面也被称为一个节点(node)。 要查询的目标资料的说明文件必须要以info的格式来写成才能够使用info的特殊功能(例如超连结)。 而这个支援info指令的文件预设是放置在/usr/share/info/这个目录当中的。 举例来说,info这个指令的说明文件有写成info格式,
[xiaohui@localhost ~]$ info info
File: info.info, Node: Top, Next: Getting Started, Up: (dir)
Info: An Introduction
*********************
The GNU Project distributes most of its on-line manuals in the "Info
format", which you read using an "Info reader". You are probably using
an Info reader to read this now.
....(中间省略)....
If you are new to the Info reader and want to learn how to use it,
type the command 'h' now. It brings you to a programmed instruction
sequence. # 这一段在说明,按下 h 可以有简易的指令说明!很好用!
....(中间省略)....
* Menu:
* Getting Started:: Getting started using an Info reader.
* Advanced:: Advanced Info commands.
* Expert Info:: Info commands for experts.
* Index:: An index of topics, commands, and variables.
--zz-Info: (info.info.gz)Top, 52 lines --Bot------------------------------------------
File:代表这个info page的资料是来自info.info档案所提供的;
Node:代表目前的这个页面是属于Top节点。 意思是info.info内含有很多资讯,而Top仅是info.info档案内的一个节点内容而已;
Next:下一个节点的名称为Getting Started,你也可以按 『N』到下个节点去;
Up:回到上一层的节点总揽画面,你也可以按下 『U』回到上一层;
Prev:前一个节点。但由于Top是info.info的第一个节点,所以上面没有前一个节点的资讯。
从第一行你可以知道这个节点的内容、来源与相关连结的资讯。更有用的资讯是,你可以透过直接 按下N, P, U来去到下一个、上一个与上一层的节点(node)!非常的方便! 第一行之后就是针对这个节点的说明。在上表的范例中,第二行以后的说明就是针对info.info内的Top这个节点所做的。 另外,无论在任何一个页面,只要不知道怎麽使用 info 了,直接按下 h 系统就能够提供一些基本按键功能的介绍喔!
『Menu』底下共分为四小节,分别是Getting Started等等的,我们可以使用上下左右按键来将游标移动到该文字或者『 * 』上面,按下Enter, 就可以前往该小节了!另外,也可以按下[Tab]按键,就可以快速的将游标在上表的画面中的node间移动。
Menu界面可以使用的快捷按键
按键 | 说明 |
空白键 | 向下翻一页 |
[Page Down] | 向下翻一页 |
[Page Up] | 向上翻一页 |
[tab] | 在 node 之间移动,有 node 的地方,通常会以 * 显示。 |
[Enter] | 当游标在 node 上面时,按下 Enter 可以进入该 node 。 |
b | 移动游标到该 info 画面当中的第一个 node 处 |
e | 移动游标到该 info 画面当中的最后一个 node 处 |
n | 前往下一个 node 处 |
p | 往上一个 node 处 |
u | 向上移动一层 |
s(/) | 在 info page 当中进行搜寻 |
h, ? | 显示求助选单 |
q | 结束这次的 info page |