shell中date日期相关操作

shell中日期相关操作,
获取当前时间,并指定格式:

date +%Y%m%d
返回:20200603

获取当前时间的前n天,比如昨天:

date +%Y%m%d -d "-1 days"
返回:20200602

常见格式化日期:

date "+%Y-%m-%d %H:%M:%S"
返回:2020-06-03 15:15:2

计算两个时间的差值,
date +%s可以将日期转换成秒数:

date +%s 
返回:1591174030

将字符串转换为日期

date -d "2020-06-03"
或者
date -d "20200603"
返回:
2020年 06月 03日 星期三 00:00:00 CST

或者:

date -d '2020-06-03 19:03:05'
date -d "20200603 19:03:05"
返回
2020年 06月 03日 星期三 19:03:05 CST

可以将时间转换为秒数之后计算两个时间的差值。
如:

start_time=`date +%s -d "2020-06-03 15:52:37"`
end_time=`date +%s -d "2020-06-03  15:53:52"`
echo $(($end_time-$start_time))

遍历某个时间段时间

start_time=$1
end_time=$2
if [[ ${start_time} > ${end_time} ]];then
    echo "error: end time smaller than start time,exit "
    exit 1
fi
while [[ ${start_time} -le ${end_time} ]]; do
    echo ${start_time}
    start_time=`date -d "${start_time} 1 day" +%Y%m%d`
done
  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值