shell--日期格式化显示和日期的加减
1. 显示当前日期时间.
$ date
Mon Jun 2 13:55:47 HKT 2014
当前时间戳:
date +%s
2. 按照指定格式显示当前时间(date +format).
(1). 显示年月日.
$ date "+%Y-%m-%d"
2014-06-02
$ date "+%F"
2014-06-02
$ date "+%Y/%m/%d"
2014/06/02
补充:时间字符串转换为时间戳
date -d "2010-10-18 00:00:00" +%s
补充:时间戳转换为时间字符串
date -d @1287331200 "+%Y-%m-%d"
(2)显示年月日时分秒.
$ date "+%Y-%m-%d %H:%M:%S"
2014-06-02 14:02:29
3. 相关格式列表(更多man date).
%Y YYYY格式的年份(Year)
%m mm格式的月份(),01-12
%d dd格式的日期(day of month),01-31
%H HH格式的小时数(),00-23
%M MM格式的分钟数(),00-59
%S SS格式的秒数(),00-59
%F YYYY-mm-dd格式的完整日期(Full date),同%Y-%m-%d
%T HH-MM-SS格式的时间(Time),同%H:%M:%S
%s 自1970年以来的秒数。C函数time(&t) 或者Java中 System.currentTimeMillis()/1000, new Date().getTime()/1000
%w 星期几,0-6,0表示星期天
%u 星期几,1-7,7表示星期天
以上格式可以任意组合,还可以包括非格式串,如 date "+今天是%Y-%d-%m,现在是$H:%M:%S".
4.显示指定的日期时间(是显示,不是设置!)
格式:date -d STRING +FORMAT
(1) 显示明天
$ date -d tomorrow "+%Y-%m-%d"
2014-06-03
$ date -d tomorrow
Tue Jun 3 14:11:04 HKT 2014
(2) 其他STRING--日期的加减.
今天:
date
date -d today
date -d now
明天:
date -d tomorrow
date -d next-day
date -d next-days
date -d "next day"
date -d "next days"
date -d "+1 day"
date -d "+1 days"
date -d "1 day"
date -d "1 days"
date -d "-1 day ago"
date -d "-1 days ago"
昨天:
date -d yesterday
date -d last-day
date -d last-days
date -d "last day"
date -d "last days"
date -d "-1 day"
date -d "-1 days"
date -d "1 day ago"
date -d "1 days ago"
前天:
date -d "2 day ago"
date -d "2 days ago"
date -d "-2 day"
date -d "-2 days"
大前天:
date -d "3 day ago"
date -d "3 days ago"
date -d "-3 day"
date -d "-3 days"
上周,一周前:
date -d "1 week ago"
date -d "1 weeks ago"
上个星期五(不是上周五):
date -d "last-friday"
date -d "last friday"
上月,一月前:
date -d last-month
date -d last-months
date -d "-1 month"
date -d "-1 months"
下月,一月后:
date -d next-month
date -d next-months
date -d "+1 month"
date -d "+1 months"
去年,一年前:
date -d last-year
date -d last-years
date -d "-1 year"
date -d "-1 years"
明年,一年后:
date -d next-year
date -d next-years
date -d "+1 year"
date -d "+1 years"
一小时前:
date -d "last-hour"
date -d "last-hours"
date -d "1 hour ago"
date -d "1 hours ago"
一小时后:
date -d "1 hour"
date -d "1 hours"
一分钟前:
date -d "1 minute ago"
date -d "1 minutes ago"
一分钟后:
date -d "1 minute"
date -d "1 minutes"
一秒前:
date -d "1 second ago"
date -d "1 seconds ago"
一秒后:
date -d "1 second"
date -d "1 seconds"