date 显示日期的命令
输出当前日期(年月日)
date +%Y%m%d
----------------
20180515
也可以更改格式
date +%Y-%m-%d
date +%Y/%m/%d
--------------
2018-05-15
2018/05/15
输出当前时间(时分秒)
date +%H%M%S
--------------
154651
结合起来就是
date +%Y-%m-%d_%H:%M:%S
--------------
2018-05-15_15:50:59
输出昨天
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"
--------------
2018年 05月 15日 星期二 15:23:34 CST
输出明天
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"
--------------
2018年 05月 17日 星期四 15:27:44 CST
总结下:
格式:date -d STRING
显示用STRING指定的日期时间
String可以用"tomorrow","yesterday","next-day"等
格式:date +Format
根据指定格式显示当前时间。比如 date +%Y-%m-%d 就是以 YYYY-mm-dd 的形式显示当前日期,其中YYYY是年份,mm为月份,dd为日期。
常用FORMAT
%Y YYYY格式的年份(Year)
%m mm格式的月份(),01-12
%d dd格式的日期(day of month),01-31
%H HH格式的小时数(),00-23
%h 月份 例如,5月
%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-%m-%d现在是%H:%M:%S
----------------
今天是2018-05-16现在是15:43:36
可以看到,中间是不能有空格的,如果要有空格,应该怎么做呢?
date "+今天是%Y-%m-%d 现在是%H:%M:%S"
----------------
今天是2018-05-16 现在是15:43:48
双引号"",单引号'',反引号``具体的区别在这里不再描述了
显示周几
date +%w
----------------
3
显示昨天是周几
date -d yesterday +%w
----------------
2
指定几号
date +%Y%m01
----------------
20180501