Python处理日志之取得文件列表

为防止log日志过大,每隔一小时就会把重新写log文件,而之间的文件则重命名为server_errors.log.yyyy-dd-mm-nn,其中nn为序号,从00到23.

鉴于我们log的基本形式,我们要分析的不仅仅是errors.log,还需要分析其他当天产生的文件,这就需要一个方法去取得这些文件的列表。

开始的时候,准备通过glob模块来取得文件列表,glob根据给定模式生成满足该模式的文件名列表, 和 Unix shell 相同.
for eachfile in glob.glob(r"D:\Log\*.log"):
    print eachfile
注意glob返回完整路径名, 这点和os.listdir函数不同。

但是glob的不是正则,是UnixShell的规则。除了*,?,[]之外,其他的正则表达式不能用。

于是只能另起炉灶,这次使用的是os.listdir,
因为这些文件都是以相同的名字开头,可以使用startswith方法进行过滤,然后通过文件的创建时间来取得今天产生的log文件列表
作者:Shane
出处:http://bluescorpio.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/bluescorpio/p/1587602.html