linux中通过date命令获取昨天或明天时间的方法

时间:2022-01-23 17:59:54

例如:

 

复制代码

代码如下:


date +"%F"
输出格式:2011-12-31</p> <p>date +"%F %H:%M:%S"
输出格式:2011-12-31 16:29:50

 


这都是打印出系统的当前时间,如果要获取相对当前时间的某个时间,需要怎么做,通过 -d 参数就能实现。例如:

 

复制代码

代码如下:


date -d"tomorrow" +"%F %H:%M:%S"
输出明天这个时候的时间</p> <p>date -d"yesterday" +"%F %H:%M:%S"
输出昨天这个时候的时间

 

如果说我想获取13天前的时间怎么办,-d参数还有更加灵活的用法,例如:

 

复制代码

代码如下:


date -d"-1 day ago" +"%F %H:%M:%S"
输出明天这个时候的时间</p> <p>date -d"1 day ago" +"%F %H:%M:%S"
输出昨天这个时候的时间</p> <p>date -d"1 week ago" +"%F %H:%M:%S"
输出7天前这个时候的时间,等价于
date -d"7 day ago" +"%F %H:%M:%S"

 

可以看到ago的强大了吧,第一个数字可以是负数,负数表示将来时间,正数表示前面已经过去的时间,第二个参数minute、hour、day、month、week。