Shell 脚本时候,遇到的时间处理问题。时间的加减,以及时间差的计算。

1。时间加减

这里处理方法,是将基础的时间转变为时间戳,然后,需要增加或者改变时间,变成 秒。

如:1990-01-01 01:01:01 加上 1小时 20分

处理方法:

a.将基础时间转为时间戳

time1=$(date +%s -d '1990-01-01 01:01:01')

echo $time1

631126861 【时间戳】

b.将增加时间变成秒

[root localhost ~]# time2=$((1*60*60+20*60))

[root localhost ~]# echo $time2

4800

c.两个时间相加,计算出结果时间

time1=$(($time1+$time2))

time1=$(date +%Y-%m-%d\ %H:%M:%S -d "1970-01-01 UTC $time1 seconds");

echo $time1

1990-01-01 02:21:01

2。时间差计算方法

如:2010-01-01 与 2009-01-01 11:11:11 时间差

原理:同样转成时间戳,然后计算天,时,分,秒

time1=$(($(date +%s -d '2010-01-01') - $(date +%s -d '2009-01-01 11:11:11')));

echo time1

将time1 / 60 秒,就变成分了。

补充说明:

shell 单括号运算符号:

a=$(date);

等同于:a=date;

双括号运算符:

a=$((1+2));

echo $a;

等同于:

a=expr 1 + 2

转自:良许

Shell 脚本的时间的加减,以及时间差的计算相关推荐

  1. Go 学习笔记(48)— Go 标准库之 time (获取时/分/秒的单位值、标准时间和Unix时间转换、字符串时间和Time类型转换、时区转换、时间的加减/休眠)

    1. 概要说明 import "time" time 包提供了时间的显示和测量用的函数.日历的计算采用的是公历. Go 提供以下几种时间类型: 时间点 Time 时间段 Durat ...

  2. 微信小程序时间加法_微信小程序获取系统时间、时间戳、时间时间戳加减

    微信小程序获取系统时间.时间戳.时间时间戳加减,微信小程序获取明天时间 //获取当前时间戳 var timestamp = Date.parse(new Date()); timestamp = ti ...

  3. presto时间转换、时间加减、时间差

    Hive中对应的日期操作见: https://blog.csdn.net/qq_21997625/article/details/111473520 问题1:时间格式转换 例子: 当前时间202001 ...

  4. javaScript中时间的加减

    首先在javascript说起时间就离不开Date()这个对象 创建Date对象的语法: var Time=new Date();  //Date返回当日的时间和日期 然后的例getDate,getD ...

  5. SQL Server 中的时间的加减和时间的比较和时间的转换

    在开发中经常用到时间,比如查统计查询,做报表,计算出每周,上周.去年.季度--的订单,金额等业务,就需要频繁使用到时间处理. 1.时间加减之DATEDIFF DATEDIFF(datepart,sta ...

  6. python使用datetime获取两个时间的时间差,与时间的加减运算

    设置指定日期为datatime格式:datetime(2020, 1, 1),表示2020年1月1日 设置指定的时间差:datetime.timedelta(days=2),表示两天的时间差 时间差是 ...

  7. 微信小程序获取系统时间、时间戳、时间时间戳加减

    http://blog.csdn.net/ufo00001/article/details/72834437 //获取当前时间戳var timestamp = Date.parse(new Date( ...

  8. 如何进行时间的加减运算

    ☆ Day 开头的函数 ● Unit DateUtils function DateOf(const Avalue: TDateTime): TDateTime; 描述 使用 DateOf 函数用来把 ...

  9. sql语句中获取当前时间+当前日期加减相应的天数操作笔记

    1.sql中获取当前的时间:date_format(now(),'%Y-%m-%d'); select NOW(); select date_format(now(),'%Y-%m-%d'); 2.对 ...

最新文章

  1. tomcat安装及使用详解
  2. STM32F103ZE单片机在WWDG窗口看门狗的EWI中断中喂狗导致系统复位的原因及解决办法(中断函数重入问题)
  3. 关于GiF动图你不知道的9件事
  4. pandas.describe()参数的意义
  5. 滴滴试行网约车遗失物品处理规则:司机返还遗失物品将收费
  6. PCL之鼠标拾取点云的三维坐标
  7. 关于DOS和命令行的故事
  8. java软件工程师月薪多少?
  9. 快速批量执行redis命令
  10. C语言复健(数组) 珠心算测验
  11. 信息安全技术——(九)基于MATLAB数字水印系统设计
  12. 解决Cipher Suites导致的“未能创建 SSL/TLS 安全通道”异常问题
  13. Windows10 系统部分软件字体虚化不清晰
  14. 计算机休眠后无法唤醒出现蓝屏,笔记本电脑进入睡眠,唤醒后出现蓝屏怎么回事?...
  15. lio linux工具,Linux中三种SCSI target的介绍之LIO
  16. 简述冯诺依曼工作原理_冯.诺依曼计算机的基本工作原理是什么??
  17. samba 设置 netbios
  18. X79主板win10启动卡住问题修复处理
  19. how to do research
  20. vue项目中 axios 请求成功 却进入catch中

热门文章

  1. POJ - 1459 Power Network(网络流-最大流)
  2. Python基础语法-Python,Java,C++变量互换值的区别
  3. 差分约束系统之Bellman_Ford与Spfa判断负权回路
  4. FFmpeg获取DirectShow设备数据(摄像头,录屏)
  5. setsockopt函数全面解析
  6. cocos2d-x游戏实例(7)-A星算法(3)
  7. WebRTC Audio Encoder/Decoder Factory 的实现
  8. C语言程序设计 | 操作符介绍与使用方法
  9. [译]提案:在Go语言中增加对持久化内存的支持
  10. 由“深”至“广”,探索2022音视频技术的无限可能