zoukankan      html  css  js  c++  java
  • linux下 shell时间处理

    一、hour

    #获取当前时间年月日时分秒
    current_create_time=`date +"%Y-%m-%d %H:%M:%S"` echo $current_create_time #获取当前时间向前一小时的时间(年月日时分秒) timeFlag=`date -d "60 minute ago" +"%Y-%m-%d %H:%M:%S"`
    #获取当前时间向前一小时的时间(年月日时) timeFlag1
    =${timeFlag:0:13} echo $timeFlag1
    #获取当前时间向前10分钟(年月日时分秒) timeend
    =`date -d "10 minute ago" +"%Y-%m-%d %H:%M:%S"` echo $timeend
    #获取当前时间向前1小时10分钟(年月日时分秒) timestart
    =`date -d "70 minute ago" +"%Y-%m-%d %H:%M:%S"` echo $timestart # query start time query_start_time=`date +"%Y-%m-%d %H:%M:%S"` #将时间转为时间戳 query_start_time_timestamp=`date -d "$query_start_time" +%s` # query end time query_end_time=`date +"%Y-%m-%d %H:%M:%S"` #将时间转为时间戳 query_end_time_timestamp=`date -d "$query_end_time" +%s` # query time-consuming
    #时间差值计算 query_time_time_consuming
    =`expr $query_end_time_timestamp - $query_start_time_timestamp` echo query_time_time_consuming:$query_time_time_consuming

    二、day

    #当前时间
    current_create_time=`date +"%Y-%m-%d %H:%M:%S"`
    #当前时间向前一天(年月日时分秒) timeFlag
    =`date -d "1 day ago" +"%Y-%m-%d %H:%M:%S"`
    #当前时间向前一天(年月日) timeFlag1
    =${timeFlag:0:11} #当前时间向前一天 timestart=`date -d "1 day ago" +"%Y-%m-%d %H:%M:%S"`
    #将时间转为时间戳 timestart1
    =`date -d "$timestart" +%s` #10分钟 time1=$((10*60)) time2=$(($timestart1-$time1)) #将计算好的时候格式化,得到当前时间前一天零10分钟的时间 timestart_new=`date -d @$time2 "+%Y-%m-%d %H:%M:%S"` echo timestart_new:$timestart_new

    三、work

    #获取当前时间一周前的时间(年月日时分秒)
    timeFlag=`date -d "-7 days" +"%Y-%m-%d %H:%M:%S"`
    #获取当前时间一周前的实际(年月日) echo $timeFlag timeFlag1
    =${timeFlag:0:11} #计算这个timeflag的日期是当前年的第几周 a=$(date +%W)

    四、month

    #获取当前时间的上一个月(精确到月)
    timeFlag=`date -d "$(date +%Y-%m)-01 last month" +%Y-%m`
    #获取当前时间的前10分钟
    timeend=`date -d "10 minute ago" +"%Y-%m-%d %H:%M:%S"`
    #获取当前时间的前一个月
    timestart=`date -d "1 month ago" +"%Y-%m-%d %H:%M:%S"`
    #获取当前时间的前一个月零10分钟(通过当前时间的前一个月再减去10分钟),先格式化为时间戳
    timestart1=`date -d "$timestart" +%s`
    #10分钟
    time1=$((10*60))
    time2=$(($timestart1-$time1))
    #将计算好的时候格式化,得到当前时间前一个月零10分钟的时间
    timestart_new=`date -d @$time2  "+%Y-%m-%d %H:%M:%S"`
    echo timestart_new:$timestart_new
  • 相关阅读:
    产品开源了(discuz!nt 2.0),顺便将前些时候发的文章做个总结
    一个曾经的"愤青梦"弥衡
    推荐两个web菜单控件(右击和顶部主菜单)
    一本晚看了两年半的书蓝海战略
    Discuz!NT 在线用户功能简介
    我的2007
    ajax.net调用session和cookie
    最新(2010年)搜索引擎优化(SEO)专家工具集合
    Android学习资料大全
    基于.net的aop实现技术
  • 原文地址:https://www.cnblogs.com/yfb918/p/11269056.html
Copyright © 2011-2022 走看看