http://www.codelast.com/?p=775
在shell中,字符串转换为时间戳可以这样做:
1
|
date
-d
"2010-10-18 00:00:00"
+%s
|
不需要指定时、分、秒的话,直接写日期就可以了:
1
|
date
-d
"2010-10-18"
+%s
|
输出形如:
1287331200
其中,-d参数表示显示指定的字符串所表示的时间,+%s表示输出时间戳。
而时间戳转换为字符串可以这样做:
1
|
date
-d @1287331200
|
输出形如:
Mon Oct 18 00:00:00 CST 2010
如果要转换成“2010-10-18 00:00:00”这种形式的日期时间字符串,则这样做:
1
|
date
-d
"1970-01-01 UTC 1287331200 seconds"
"+%F %T"
|
输出形如:
2010-10-18 00:00:10
再多废话一句,如果只要输出日期,不要时间,则去掉 %T 就可以了:
1
|
date
-d
"1970-01-01 UTC 1287331200 seconds"
+%F
|
输出形如:
2010-10-18
顺便再记一下取昨天日期的方法:
1
|
date
-d
"yesterday"
+
"%Y-%m-%d"
|
输出形如:
2010-08-22