文章目录
date
date后边可以接两个参数,一个是[选项]
,一个是[格式]
,都是选填。
[选项]
和[格式]
的顺序可前可后。
[选项]
为空,则为当前时间;
[格式]
为空,则为默认格式。如下:
$ date
Sat Jan 12 22:12:50 CST 2019
通过date --h得到帮助如下:
$ date --h
Usage: date [OPTION]... [+FORMAT]
其中,[选项]
中,重点是-d, --date=STRING
。以下解析。
-d,–date参数
三种参数接法
-d str
--date str
--date=str
其中,str
通常可以有两种格式- 时间字符串格式,如
2010/08/09
,2010-10-18
,2010-10-18 00:00:00
等 - 以当前时间做计算的格式,如
+1 day(s)
,-1 day(s)
,1 day(s) ago
等,复数单数均可。
其中注意:
- date后面每个空格之间都是一个独立的参数,分别看做整体,用双引号格式能看的更为清楚,如
date "+%Y%m%d %H:%M:%S" -d "+1 hour"
-d“-2 day 20111111
”指定输出内容“+%Y%m%d”
是一个整体,控制输出格式,+后面无空格
- 参数顺序无关
date -d "-2 day 20111111" +%Y%m%d
date +%Y%m%d -d "-2 day 20111111"
date +%Y%m%d -d "20111111 -2 day"
都一样
- 独立参数有无双引号都行
date -d 2014-02-13 +%s和date -d"2014-02-13" "+%s"是一样的,还有date -d’2014-02-13’ +%s
时间字符串的转化:
用date 的输出格式控制实现,但“月日年”和“时分秒”必须分开处理,否则会无法识别。such as
2013-10-30 20:12:59 或者 20131030 20:12:59
注意:
1,二者用空格分割;
2,年月日作为整体,格式十分灵活,可以随意写。但时分秒必须用冒号”:”分开,否则无法识别。
更多参考:https://blog.csdn.net/longshenlmj/article/details/14165845
举例:
date -d "-1 year"
date -d "-1 month"
date -d "-1 day"
date -d "-1 hour"
date -d "-1 minute"
[格式]
参考:https://www.cnblogs.com/kimbo/p/7102203.html
常用格式:
%Y 年份2019
%y 年份19
%m 月份01
%d 天13
%H 24制小时
%M 分钟
%S 秒
%F 等价于%Y-%m-%d
%T 等价于%H:%M:%S
如:
$ date -d "-1 day" "+%Y-%m-%d"
2019-01-11