linux下计算时间,linux 日期时间计算

有很多需求都是计算N天前/后,N月前/后,甚至是N年

日期计算:计算3天前的日期

date +%D -d '-3 days'

11/03/12计算3天后的日期

date +%D -d '+3 days'

11/09/12计算3天后的日期,写不写+都一个效果,跟上边结果一样

date +%D -d '3 days'

11/09/12计算1个月前的日期

date +%F -d '-1 month'

2012-10-06计算1年前的日期

date +%F -d '-1 year'

2011-11-06

时间计算获取当前时间

date +%T

13:48:25获取1小时前的时间

date +%T -d '-1 hours'

12:48:27获取10分钟前的时间

date +%T -d '-10 minutes'

13:38:35获取3小时后的时间

date +%T -d '3 hours'

16:49:08

时间戳:显示系统当前的时间戳

date +%s

1352183334把某时间戳转换回日期格式

date -d "@1352183334"

Tue Nov  6 14:28:54 CST 2012

再来个计算任意日期的前N日或后N日如何操作:DAY="20000101"

echo $DAY

20000101

date +%F -d "$DAY 1 day"

2000-01-02

date +%F -d "$DAY -1 day"

1999-12-31

计算两个日期相差天数,比如2012年11月1日和2010年5月1日,相差多少天呢?d1=$(date +%s -d 20121101)

d2=$(date +%s -d 20100501)

echo $(((d1-d2)/86400))

915

你可能感兴趣的:(linux下计算时间)