python获取两个时间间隔的天数

举报
神的孩子在歌唱 发表于 2022/07/09 23:21:38 2022/07/09
【摘要】 前言: 作者:神的孩子在歌唱 大家好,我叫智 今天做项目的时候有一个定时清理日志的需求,可是linux里面无法获取到文件的创建时间了,只能获取状态和更新时间,由于目前日志是存在同一个lo...

前言:

作者:神的孩子在歌唱

大家好,我叫智

今天做项目的时候有一个定时清理日志的需求,可是linux里面无法获取到文件的创建时间了,只能获取状态和更新时间,由于目前日志是存在同一个log中的(如下图),只要到达一定时间就把这个文件删除就可以,所以只要通过正则获取第一条日志产生的时间就知道他创建的时间了。

在这里插入图片描述

不多说,上代码:

import datetime
def dif_time(date):
    # 使用datetime类型计算两个时间之间差值
    now_time = datetime.datetime.now()
    now_time = now_time.strftime('%Y-%m-%d %H:%M:%S')
    d1 = datetime.datetime.strptime(date, '%Y-%m-%d %H:%M:%S')
    d2 = datetime.datetime.strptime(now_time, '%Y-%m-%d %H:%M:%S')
    #间隔天数
    day = (d2 - d1).days
    #间隔秒数
    second = (d2 - d1).seconds
    print (day)  
    print (second)  #注意这样计算出的秒数只有小时之后的计算额 也就是不包含天之间差数

with open('E:\\study\\test\\webssh.log', encoding='utf-8') as file:
    content_list = file.readlines()  # 读取所有行并返回列表
    contentall = [x.strip() for x in content_list]
    if content_list.__len__() >3:
        print(content_list[2])
        pattern = re.compile(r'\d{4}-\d{1,2}-\d{1,2}\s\d{1,2}:\d{1,2}:\d{1,2}')
        res = pattern.match(content_list[2])
        print(res.group())
        dif_time(res.group())

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

参考文章:

https://blog.csdn.net/TFATS/article/details/103871445

python 读取一个log文件:https://www.csdn.net/tags/MtzaIgysNTIzNDQtYmxvZwO0O0OO0O0O.html

本人csdn博客:https://blog.csdn.net/weixin_46654114

转载说明:跟我说明,务必注明来源,附带本人博客连接。

文章来源: chenyunzhi.blog.csdn.net,作者:神的孩子都在歌唱,版权归原作者所有,如需转载,请联系作者。

原文链接:chenyunzhi.blog.csdn.net/article/details/125677691

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。