一、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

linux下 shell时间处理的更多相关文章

  1. Linux下长时间ping网络加时间戳并记录到文本

    Linux下长时间ping网络加时间戳并记录到文本   由于一些原因,比如需要检查网络之间是否存在掉包等问题,会长时间去ping一个地址,由于会输出大量的信息而且最好要有时间戳,因此我们可以使用简单的 ...

  2. 06 Linux下Shell介绍

    一.概述 每个人在成功登陆Linux后,系统会出现不同的提示符号,例如$,~,#等,然后你就可以开始输入需要的命令.若命令正确,系统就会依据命令的要求来执行,直到注销系统为止,在登陆到注销期间,输入的 ...

  3. .Neter玩转Linux系列之四:Linux下shell介绍以及TCP、IP基础

    基础篇 .Neter玩转Linux系列之一:初识Linux .Neter玩转Linux系列之二:Linux下的文件目录及文件目录的权限 .Neter玩转Linux系列之三:Linux下的分区讲解 .N ...

  4. Linux 下shell 编程学习脚手架

    linux body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding-t ...

  5. linux 下shell 编写脚本

    linux 下shell 编写脚本: 1.程序结构练习:编写一个脚本,给定一个正整数,计算出这个数所有位的数字之和. 例如:程序给定输入123,那么应该返回1+2+3=6. 2.程序结构练习:编写一个 ...

  6. Linux下Shell日期的格式,你知道几种?

    Linux下Shell日期的格式,你知道几种? 不管是哪种语言,日期/时间都是一个非常重要的值.比如我们保存日志的时候,往往是某个前缀再加上当前时间,这样日志文件名称就可以做到唯一. 在Shell环境 ...

  7. Linux下精确控制时间的函数

    Linux下精确控制时间的函数 在测试程序接口运行时间的时候,常用time,gettimeofday等函数,但是这些函数在程序执行的时候是耗费时间的,如果仅仅测试时间还行,但是如果程序中用到时间控制类 ...

  8. Linux下设置时间

    Linux下设置时间 提供两种最根本有效的方式,就是更改时区.这里以更改为国内上海时间例子,其他地方时区同理. 方法一 备份文件 mv /etc/localtime /etc/localtime.ba ...

  9. Linux下系统时间函数、DST等相关问题总结(转)

    Linux下系统时间函数.DST等相关问题总结 下面这个结构体存储了跟时区相关的位移量(offset)以及是否存在DST等信息,根据所在的时区信息,很容易找到系统时间与UTC时间之间的时区偏移,另外根 ...

随机推荐

  1. 第8.27节 Python中__getattribute__与property的fget、@property装饰器getter关系深入解析

    一. 引言 在<第7.23节 Python使用property函数定义属性简化属性访问的代码实现>和<第7.26节 Python中的@property装饰器定义属性访问方法gette ...

  2. PyQt开发实战: 利用QToolBox开发的桌面工具箱

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 toolBox工具箱是一个容器部件,对应类为QToolBox,在其内有一列从上到下顺序排列 ...

  3. PyQt学习随笔:QTableWidget项sizeHint的作用以及与QHeadView的sectionResizeMode、ResizeToContents的关系

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在学习QTableWidgetItem的sizeHint()方法时,Qt自带材料中介绍sizeHin ...

  4. 使用kali生成远控payload

    kali linux中的metasploit框架是优秀的渗透框架之一,今天记载一下使用kali生成windows远控木马的过程 生成payload使用的工具是MSFVenom,我们输入msfvenom ...

  5. IntelliJ IDEA2019.3.2破解/永久激活/安装教程

    我想大家用过史上最好的开发工具就是idea了,没有之一!看到大家都在找idea的激活教程,今天我也在这里跟大家分享一下. 本教程针对现在官网针对的版本是idea2019.3.2,为防止以后会更新破解失 ...

  6. java视频流的断点续传功能

    项目中需要实现浏览器中视频的拖动问题解决 /** * 视频文件的断点续传功能 * @param path 文件路径 * @param request request * @param response ...

  7. js上 初识JavaScript

    1.JavaScript简介 **JavaScript ** 是什么?(重点) Js是一种专门为网页交互设计的客户端(浏览器端)的脚本语言: Js与html和css有相似之处,都在浏览器端解析: Js ...

  8. ASP.NET Core 中间件的使用(二):依赖注入的使用

    写在前面 上一篇大家已经粗略接触了解到.NET Core中间件的使用:ASP .Net Core 中间件的使用(一):搭建静态文件服务器/访问指定文件, .NET Core框架中很多核心对象都是通过依 ...

  9. win10新版wsl2使用指南

    本篇文章会介绍win10中wsl2的安装和使用以及遇到的常见问题比如如何固定wsl2地址等问题的总结. 一.wsl2简介 wsl是适用于 Linux 的 Windows 子系统,安装指南:适用于 Li ...

  10. Linux下通用二进制方式安装MySQL

    1.下载glibc版本的MySQL: https://downloads.mysql.com/archives/community/ 2.查看mysql用户和mysql组是否存在(用户和组的信息存在/ ...