Linux 两个时间的大小比较

        在Linux系统中比较两个时间的大小,首先需要将对比大小的两个时间分别转换成时间戳;(转换成时间戳,然后对比时间大小,实现起来会更加简单)

1、时间换成时间戳

        a、直接输出当前时间戳:date +%s

        b、转成时间戳:date -d "你的时间" +%s

[root@localhost ~]# #输出当前时间戳
[root@localhost ~]# 
[root@ycqtest ~]# date +%s
1681795252
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# #输出 2023年4月19日 14点的时间戳的多种写法
[root@localhost ~]# 
[root@localhost ~]# date -d "2023-04-19 14:00" +%s
1681884000
[root@localhost ~]# 
[root@localhost ~]# date -d "20230419 14:00" +%s
1681884000
[root@localhost ~]# 
[root@localhost ~]# date -d "2023-04-19 14:00:00" +%s
1681884000
[root@localhost ~]# 
[root@localhost ~]# date -d "20230419 14" +%s
1681884000
[root@localhost ~]# 
[root@localhost ~]# date -d "2023-04-19 14" +%s
1681884000
[root@localhost ~]# 

2、将时间戳转换成日期时间

[root@localhost ~]# 
[root@localhost ~]# #将日期 2023年4月19日 14点转换成时间戳
[root@localhost ~]# 
[root@localhost ~]# date -d "2023-04-19 14:00" +%s
1681884000
[root@localhost ~]# 
[root@localhost ~]# #将时间戳转换成日期和时间
[root@localhost ~]# 
[root@localhost ~]# date -d @1681884000
2023年 04月 19日 星期三 14:00:00 CST
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# # 将时间戳转换成指定日期格式
[root@localhost ~]# 
[root@localhost ~]# date -d @1681884000 +"%Y-%m-%d %H:%M:%S"
2023-04-19 14:00:00
[root@localhost ~]# 
[root@localhost ~]# date -d @1681884000 +"%F %T"
2023-04-19 14:00:00
[root@localhost ~]#

3、对比时间戳:

#!/bin/bash

# 这里举一个简单的例子来说明下,将两个时间转换成时间戳的实现逻辑和方法:

# 假如你的第一个时间为: 2023-04-19 14:00
# 假如你的第二个时间为: 2023-04-19 16:00

time1="2023-04-29 14:00"
time2="2023-04-19 16:00"

# time1 和 time2 的时间戳分别是: Time1 和 Time2

Time1=$(date -d "$time1" +%s)
Time2=$(date -d "$time2" +%s)

# 判断只是简单的例子,随便写的,然后按照这个逻辑写,来比较就好了
if [ $Time1 -gt $Time2  ];then
        echo " time1 > time2"
        else
        echo "time1 < time2"    
fi

if [[  $(($Time1 - $Time2)) -ge 3600 ]]; then
        echo "time1 比 time2 大于 1 小时"
    else
        echo "time1 比 time2 不大于 1 小时"
fi


echo "time1是:" $time1
echo "time2是:" $time2

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值