searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

计算日期/时间方法总结

2023-10-16 01:44:20
15
0

测试或运维人员平时写脚本时,经常会遇到需要计算日期或者时间。本文总结了几种便捷的计算日期和时间的方式,读者可根据需求和使用场景,选择相应的方式。

1. 利用时区计算前N天时间(需要知道本地时区,东半球时区为负,西半球时区为正)(Unix、Linux均可用)
例:本地时区为东八区,计算三天前的时间
#N=3
#var=`expr -8 + 24 \* $N`
#echo `TZ=GMT+$var date +"%Y-%m-%d %H:%M:%S"`
2023-08-09 12:19:02

2. 利用时间戳计算时间(Linux可用,Unix中date命令没有-d选项)
例:计算三天前的时间
#nowstamp=`date +%s`
#N=3
#targetstamp=`expr $nowstamp - 86400 \* $N`
#date -d @$targetstamp
Fri Aug  9 14:37:30 CST 2023

3. 使用awk命令中的时间函数(Linux可用,Unix中AWK命令没有内置时间函数)
例:计算三天前的时间
# awk -v N=3 'BEGIN{nowstamp=systime();target=nowstamp-86400*N;print "now="strftime("%Y-%m-%d %H:%M:%S",nowstamp),"3daybefore="strftime("%Y-%m-%d %H:%M:%S",target);}'
now=2023-08-12 14:49:31 3daybefore=2023-08-09 14:49:31

 

0条评论
0 / 1000
陈****财
2文章数
0粉丝数
陈****财
2 文章 | 0 粉丝
陈****财
2文章数
0粉丝数
陈****财
2 文章 | 0 粉丝
原创

计算日期/时间方法总结

2023-10-16 01:44:20
15
0

测试或运维人员平时写脚本时,经常会遇到需要计算日期或者时间。本文总结了几种便捷的计算日期和时间的方式,读者可根据需求和使用场景,选择相应的方式。

1. 利用时区计算前N天时间(需要知道本地时区,东半球时区为负,西半球时区为正)(Unix、Linux均可用)
例:本地时区为东八区,计算三天前的时间
#N=3
#var=`expr -8 + 24 \* $N`
#echo `TZ=GMT+$var date +"%Y-%m-%d %H:%M:%S"`
2023-08-09 12:19:02

2. 利用时间戳计算时间(Linux可用,Unix中date命令没有-d选项)
例:计算三天前的时间
#nowstamp=`date +%s`
#N=3
#targetstamp=`expr $nowstamp - 86400 \* $N`
#date -d @$targetstamp
Fri Aug  9 14:37:30 CST 2023

3. 使用awk命令中的时间函数(Linux可用,Unix中AWK命令没有内置时间函数)
例:计算三天前的时间
# awk -v N=3 'BEGIN{nowstamp=systime();target=nowstamp-86400*N;print "now="strftime("%Y-%m-%d %H:%M:%S",nowstamp),"3daybefore="strftime("%Y-%m-%d %H:%M:%S",target);}'
now=2023-08-12 14:49:31 3daybefore=2023-08-09 14:49:31

 

文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
0
0