欢迎来到代码驿站!

Shell

当前位置:首页 > 脚本语言 > Shell

Shell时间运算及时间差计算方法

时间:2021-08-12 09:30:36|栏目:Shell|点击:

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

一、时间加减

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

如: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

二、时间差计算方法

如: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脚本实现批量生成nagios配置文件

栏    目:Shell

下一篇:一天一个shell命令 linux文本内容操作系列-grep命令详解

本文标题:Shell时间运算及时间差计算方法

本文地址:http://www.codeinn.net/misctech/166201.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有