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
linux下 shell时间处理的更多相关文章
- Linux下长时间ping网络加时间戳并记录到文本
Linux下长时间ping网络加时间戳并记录到文本 由于一些原因,比如需要检查网络之间是否存在掉包等问题,会长时间去ping一个地址,由于会输出大量的信息而且最好要有时间戳,因此我们可以使用简单的 ...
- 06 Linux下Shell介绍
一.概述 每个人在成功登陆Linux后,系统会出现不同的提示符号,例如$,~,#等,然后你就可以开始输入需要的命令.若命令正确,系统就会依据命令的要求来执行,直到注销系统为止,在登陆到注销期间,输入的 ...
- .Neter玩转Linux系列之四:Linux下shell介绍以及TCP、IP基础
基础篇 .Neter玩转Linux系列之一:初识Linux .Neter玩转Linux系列之二:Linux下的文件目录及文件目录的权限 .Neter玩转Linux系列之三:Linux下的分区讲解 .N ...
- Linux 下shell 编程学习脚手架
linux body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding-t ...
- linux 下shell 编写脚本
linux 下shell 编写脚本: 1.程序结构练习:编写一个脚本,给定一个正整数,计算出这个数所有位的数字之和. 例如:程序给定输入123,那么应该返回1+2+3=6. 2.程序结构练习:编写一个 ...
- Linux下Shell日期的格式,你知道几种?
Linux下Shell日期的格式,你知道几种? 不管是哪种语言,日期/时间都是一个非常重要的值.比如我们保存日志的时候,往往是某个前缀再加上当前时间,这样日志文件名称就可以做到唯一. 在Shell环境 ...
- Linux下精确控制时间的函数
Linux下精确控制时间的函数 在测试程序接口运行时间的时候,常用time,gettimeofday等函数,但是这些函数在程序执行的时候是耗费时间的,如果仅仅测试时间还行,但是如果程序中用到时间控制类 ...
- Linux下设置时间
Linux下设置时间 提供两种最根本有效的方式,就是更改时区.这里以更改为国内上海时间例子,其他地方时区同理. 方法一 备份文件 mv /etc/localtime /etc/localtime.ba ...
- Linux下系统时间函数、DST等相关问题总结(转)
Linux下系统时间函数.DST等相关问题总结 下面这个结构体存储了跟时区相关的位移量(offset)以及是否存在DST等信息,根据所在的时区信息,很容易找到系统时间与UTC时间之间的时区偏移,另外根 ...
随机推荐
- PyQt(Python+Qt)学习随笔:QTabWidget选项卡部件移除选项卡的removeTab和clear方法
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 要从一个QTabWidget中去除选项卡,可用使用removeTab和clear方法. 1.移除选项 ...
- 关于RequestParam在不同的Spring版本上,接口在controller重载时注解可能失效的踩坑记录
先抛背景: 我项目中的Spring版本是2.0.3.RELEASE. api-demo负责暴露接口,service-demo负责实现功能.接口参数的@RequestParam和@RequestBody ...
- Hbase 2.2.2 安装、配置(兼容 Hadoop 3.1.3)
准备 Hbase 2.2.2 安装包 下载链接 链接:https://pan.baidu.com/s/1TqEry-T7sYpq4PdhgLWdcQ 提取码:de5z 安装 上传到虚拟机上,之后解压即 ...
- js原生方法map实现
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 深入理解Java虚拟机(五)——JDK故障处理工具
进程状况工具:jps jps(JVM Process Status Tool) 作用 用于虚拟机中正在运行的所有进程. 显示虚拟机执行的主类名称以及这些进程的本地虚拟机唯一ID. 可以通过RMI协议查 ...
- 关于Switch Case的优化
switch case虽然是代替if else而出现的,并不好维护,有时候使用switch还不如使用if else. 但没有别的东西能代替switch case了吗?答案当然是否定的,现在就有两种方式 ...
- 基于menu小插件探索工程实践
目录 一.准备工作 1.C/C++环境搭建 2.VSCode的配置 (1) 安装插件: (2) 设置配置文件: 二.工程化编程实战 1.模块化设计 2.可重用设计:进一步抽象 menu的进一步优化 可 ...
- HashMap 中 Key 类型的选择
什么对象可以作为HashMap的key值? 从HashMap的语法上来讲,一切对象都可以作为Key值.如:Integer.Long.String.Object等.但是在实际工作中,最常用的使用Stri ...
- Java中字段赋值顺序的问题
static字段 public class Client { public static int i = 2; static { i = 100; } public static void main( ...
- tomcat中配置jndi数据库源
tomcat添加依赖 lib目录下添加依赖mysql-connector-java-8.0.16 配置数据源 介绍两种方法:tomcat中配置或web应用中配置 tomcat/conf/context ...