注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

永福的技术博客

Linux运维

 
 
 

日志

 
 

[翻译]date命令的解释和实例  

2011-12-25 17:40:48|  分类: CentOS |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
date  用于输出和设置系统日期和时间。

synopsis    
date  [OPTION] ... [+FORMAT]
date  [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

描述
     用指定的格式输出或设置系统时间。
-d, --date=STRING          显示STRING所描述的时间,而不是现在。
-f,--file=DATEFILE           DATEFILE中每行作为一个时间参数,相当于--date。
-r, --reference=FILE        显示FILE的最后修改时间。
-R,--rfc-2822                  以RFC 2822格式输出日期和时间。 如:Sun, 25 Dec 2011 15:45:53 +0800
--rfc-3339=TIMESPC       以RFC 3339格式输出日期和时间。TIMESPC='date', 'second', or 'ns' 表示日期和时间的精度。日期和时间以单个空格分隔: 2006-08-07 12:34:56-06:00
-s,--set=STRING             以STRING描述的时间设置系统时间。
-u,--utc,--universal          输出或设置成协调世界时。
--help                            显示这个help页面并退出。
--version                        显示版本信息并退出。

输出格式控制。 解释顺序(优先级)为:
%%          输出字符%
%a           本地语言的星期简写(e.g., Sun, 日)
%A           本地语言的星期全写(eg., Sunday, 星期日)
%b           本地语言月份简写(e.g., Jan, 12月)
%B           本地语言月份全写(e.g., January, 十二月)
%c           本地语言的日期和时间(eg. Thu Mar 3 23:05:25 2005    2011年12月25日 星期日 16时02分32秒)
%C           世纪;类%Y,除了忽略最后两位数字(e.g., 20)。【测试结果为,取年份的前两位数字】
%d           月份中的日期(eg, 01)
%D           日期,同 %m/%d/%y 
%e           月份中的日期,代一个空格前缀;同 %_d  【与%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)
%l            小时(1..12)
%m          月份(01..12)
%M          分钟(00..59)
%n           新的一行
%N           纳秒(000000000...999999999)
%p           本地语言的上午或下午; 未知显示空白
%P           类 %p , 但以小写字母表示
%r           本地语言12小时制时间(e.g., 11:11:04 PM)
%R          24小时制时间和分钟; 同 %H:%M
%s          自1970-01-01 00:00:00 UTC以来的秒数
%S          秒钟(00..60)
%t           一个tab空格
%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   2011年12月25日)
%X           本地语言时间表示(如:23:13:48   16时45分49秒)
%y           年份的最后两位数(00..99)
%Y           年份
%z           +hhmm 数字时区 (如:-0400    +0800)
%:z          +hh:mm 数字时区 (如:+08:00)
%::z         +hh:mm:ss 数字时区(如:+08:00:00 )
%:::z        数字时区,必要的精度。(如: +08)
%Z           字母时区简写(如:CST)

默认,日期以0填充字段域。这些标志选项可以在%号后使用:
-          (连字号hyphen)不要填充字段域
_          (下划线underscore)以空白填充
0          以0填充
^          使用大写字母(可以时)
#          使用相反的大小写(可以时)
在任何含有可选字段域宽度的标志后,当作一个十进制数。可选修改符'E'使用合适的本地语言的表示法,可选修改符'O'使用合适的本地语言的数字表示法。

DATE STRING
            --date=STRING 是一个很自由的可读语言的日期字符串。如"Sun, 29 Feb 2004 16:21:42 -0800" 或 "2004-02-29 16:21:42" 或者 "next Thursday". 日期字符串可以包含日历事件的项目、一天中的时间、时区、一周中的日期、相对时间、相对日期、数字。 空白字符串表明是一天开始的时间。这里只是简单的介绍日期字符串的格式,详细介绍请参阅info文档。

一些 man page 没提到的 --date=STRING 使用方法
date -d "yesterday" # 显示昨天的时间
date -d "tomorrow" # 显示明天的时间
date -d "1 hour" # 显示一小时后的时间
date -d "2 day ago" # 显示二天前的时间
date -d "3 month ago" # 显示三个月前的时间
date -d "2 year" # 显示二年后的时间
date -d "last friday" # 显示上个星期五的时间
date -d "this friday" +"%Y%m%d"    #显示本周星期五的时间 
date -d "next week" # 显示下周的时间
date -d "next month" # 显示下个月的时间
date -d "fortnight" # 显示二周后的时间
date -d "7/1 3 week" # 显示 7/1 起算的第三周
  评论这张
 
阅读(557)| 评论(3)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017