1. date(1)
  2. date(1)

NAME

date - 打印或者设置系统日期和时间

摘要

date [选项]... [+格式]

date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

描述

以指定的格式显示当前时间,或者设置系统时间。

-d,--date=字符串

按照字符串的描述来显示时间

-f,--file=日期文件

与--date功能类似,日期文件的每一行描述都显示对应的时间

-I,--iso-8601[=TIMESPEC]

以ISO8601格式输出日期或时间。默认只显示日期,等同于TIMESPEC为 date,TIMESPEC还可以是hours,minutes,seconds,ns。

-r,--reference=文件

显示文件的最后修改时间

-R,--rfc-2822

以RFC2822格式输出日期和时间。如Mon,07Aug200612:34:56-0600

--rfc-3339=TIMESPEC

以RFC3339格式输出日期和时间。TIMESPEC为'date','seconds',或'ns' 。日期和时间以单个空格分开,如2006-08-0712:34:56-06:00

-s,--set=字符串

按照字符串的描述设置时间

-u,--utc,--universal

打印或者设置协调世界时(Coordinated Universal Time)

--help

显示帮助然后退出

--version

输出版本信息然后退出

参数中指定的格式控制输出的形式。解释序列如下:

%% 一个字母% 
%a 本土语言中星期的简称(如Sun) 
%A 本土语言中星期的全称(如Sunday)
%b 本土语言中月份的简称(如Jan) 
%B 本土语言中月份的全称(如January) 
%c 本土语言的日期和时间(如ThuMar323:05:252005) 
%C 世纪;类似%Y,但是会省略最后两个数字(如20) 
%d 该月中的第几天(如01) 
%D 日期;与%m/%d/%y一样 
%e 该月中的第几天,空白填充;与%_d一样 
%F 完整日期;与%Y-%m-%d一样 
%g 按ISO的周数标准显示年份的后两个数字(请参考%G) 
%G 按ISO周数标准的年份(请参考%V);一般与%V一起使用 
%h 与%b一样 
%H 小时(00..23) 
%I 小时(01..12) 
%j 该年中的第几天(001..366) 
%k 小时,空白填充(0..23);与%_H一样 
%l 小时,空白填充(1..12);与%_I一样 
%m 月份(01..12) 
%M 分钟(00..59) 
%n 换行 
%N 纳秒(000000000..999999999) 
%p 本土语言中对应的上午或者下午的简称;未知则不显示 
%P 类似%p,但使用小写 
%r 本土语言中的12小时制(例如,11:11:04PM) 
%R 24小时的时间和分钟;与%H:%M一样 
%s 距离1970-01-0100:00:00UTC的秒数
%S 秒(00..60)
%t 制表符 
%T 时间;与%H:%M:%S一样 
%u 该周中的第几天(1..7);1是星期一 
%U 该年中的第几周,以星期日为一周的第一天(00..53) 
%V ISO标准的周数,以星期一为一周的第一天(01..53) 
%w 该周中的第几天(0..6);0是星期天 
%W 该年中的第几周,以星期一为一周的第一天(00..53) 
%x 本土语言中日期的描述(如12/31/99) 
%X 本土语言中时间的描述(如23:13:48) 
%y 年份的最后两个数字(00..99) 
%Y 年份 
%z +hhmm格式显示的数值时区(如-0400) 
%:z +hh:mm格式显示的数值时区(如-04:00) 
%::z +hh:mm:ss格式显示的数值时区(如-04:00:00) 
%:::z 用:表示数值时区中必要的精度(如-04,+05:30) 
%Z 字母时区的简称(如EDT)

默认情况,日期中数字字段的空白使用零填充。在'%'之后可以有如下可选的标志 位:

- 不填充该字段
_ 用空格填充
0 用零填充 
^ 尽可能使用大写 
# 尽可能使用相反的大小写

在任意一个标志位后都可以有一个可选的宽度字段,为十进制数;还有一个可选的 修饰符,为E时,如果可行,使用本土语言中的表述方法,为O时,如果可行,使用 本土语言中的数字符号。

示例

距离纪元(1970-01-01UTC)的秒数转换为日期数。

$ date --date='@2147483647'

显示美国西海岸的时间(使用tzselect(1)得到时区)

$ TZ='America/Los_Angeles' date

显示美国西海岸下个星期五早上9点时对应的本地时间

$ date --date='TZ="America/Los_Angeles"09:00nextFri'

日期字符串

--date=STRING大多都是没有格式并且可读的日期字符串,例如:

"Sun,29Feb200416:21:42-0800","2004-02-2916:21:42","nextThursday"

日期字符串可以包含如下项:日历日期,该天的时间,时区,该周的第几天,相对 时间,相对日期以及数字。空字符串表示当天的开始。日期字符串的格式很难在此 简单地写下来,但您可以在info文档中找到其完整的描述。

参阅

本程序的完整文档使用Texinfo手册进行维护。如果info和本程序已经正确地安装 在了你的电脑上,通过下述命令

info coreutils 'date invocation'

可以访问完整的使用手册。

版权

本文由LCTT项目中date.1整理而来。

  1. February 2015
  2. date(1)