原文:https://blog.csdn.net/df0128/article/details/89669834
1、獲取當前日期+時間
要獲取當前日期+時間,返回如1970-01-01 00:00:00則使用如下代碼:
currentTime =`date "+%Y-%m-%d %H:%M:%S"`
1
輸出2019-04-29 09:49:48
也可以使用簡寫:
currentTime =`date "+%F %T"`
1
格式可以根據需要修改,如只獲取日期:
currentTime =`date "+%Y-%m-%d"`
1
只獲取時間:
currentTime =`date "+%H:%M:%S"`
1
2、獲取1970-01-01 00:00:00到當前時間的秒數
獲取當前時間的秒數如1556503057:
cur_sec=`date '+%s'`
1
輸出:1556503057
3、獲取1970-01-01 00:00:00到當前時間的納秒
cur_ns=`date '+%N'`
1
輸出:903987355
4、獲取當前時間的納秒級時間戳
cur_timestamp=$((`date '+%s'`*1000+`date '+%N'`/1000000))
1
輸出:1556503676106
5、獲取某個時間的秒數
date -d "2010-10-18 00:00:00" +%s
1
輸出:1287331200
6、將時間戳轉換為時間
date -d @1287331200
1
輸出:Mon Oct 18 00:00:00 CST 2010
如果想將其轉換為形如2010-10-18 00:00:00的格式則使用如下方式:
date -d "1970-01-01 UTC 1287331200 seconds" "+%F %T"
1
7、format格式說明表如下
格式 說明
%% %的轉義
%a 當地星期幾的縮寫,例如Sun、日
%A 當地星期幾的全稱,例如Sunday、星期二
%b 當地月份的縮寫,例如Jan、12月
%B 當地月份的全稱,例如January、十二月
%c 當地日期和時間,例如Thu Mar 3 23:05:25 2005,2018年12月18日 星期二 15時46分23秒
%C 輸出世紀,例如現在是2
%d 當前月份的第幾天,例如18(2018-12-18)
%D 日期,格式與%m%d%y,年為兩位數,例如12/18/18
%e 當前月份的第幾天,例如08(2018-12-08)
%F 完整格式的日期,與%Y-%m-%d相同,例如2018-12-18
%g 年份中的后兩位數,例如18
%G 年
%h 與%b一樣
%H 小時(00…23),即24小時制
%I 小時(01…12),即12小時制
%j 一年中的第幾天(001…366)
%k 小時(1…23)
%l 小時(1…12)
%m 月份(01…12)
%M 分鍾(01…59)
%n 新行
%N 納秒(000000000…999999999)
%p 當地上午或下午,例如PM、下午
%P 當地上午或下午(小寫),例如pm、下午
%q 第幾季度(1…4)
%r 當地12小時制的時間格式,例如下午 04時06分24秒
%R 24小時制的時分(%H:%M),例如16:07
%s 從1970-01-01 00:00:00 UTC到現在的秒數
%S 當前分鍾的秒數(00…59)
%T 等價%H:%M:%S,時分秒
%u 從星期一開始數,一周中的第幾天(1…7)
%U 從星期日開始數,一年中的第幾周(00…53)
%V ISO周數,從周一開始數(01…53)
%w 從周日開始數,一周中的第幾天(0…6)
%W 從星期一開始數,一年中的第幾周(00…53)
%x 當地日期,例如2018年12月18日
%X 當地時間,例如16時16分17秒
%y 年份的后兩位數(00…99)
%Y 年份
%z 時區,+hhmm,例如東八區+0800
%? 時區,+hh::mm,例如東八區+08:00
%:? 時區,+hh::mm:ss,例如東八區+08:00:00
%Z 時區的縮寫,例如東八區CST
————————————————
