在linux中,基于时间戳比较查找文件夹中创建的最后n个文件的最佳方法

2024-09-30 01:30:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要一个文件列表,这些文件是在一段时间后创建的。你知道吗

我使用了以下代码来实现相同的功能:

for p, ds, fs in os.walk(idirpath):
    for fn in fs:
        filepath = os.path.join(p, fn)
        if datetime.datetime.fromtimestamp(os.path.getmtime(filepath)) >= datetime.datetime.strptime(lasfilecredt,'%Y-%m-%d %H:%M:%S'):
           filelist.append((filepath, os.path.getmtime(filepath)))

其中: idirpath具有要选择的文件所在的路径。你知道吗

lasfilecredt具有用于标识所需文件的时间戳值。你知道吗

filelist用于存储标识的文件及其创建时间。你知道吗

有没有更好的方法来实现这一点?。我试过了子流程.popen但是为了便于将来维护我的代码,我想使用这个选项。你知道吗

当上面的代码可能无法正确识别所需的文件时,是否存在任何特定的场景。你知道吗

上面的代码用于确保在下次运行时不会再次选择以前处理过的文件(IF条件中的“>;=”符号用于确保不会过度选择文件,否则没有理由不选择“>;”)。你知道吗

在生产环境中部署此代码时,似乎会随机失败,三个月内至少失败两次。你知道吗

需要一些建议/帮助来确定可能失败的场景。你知道吗


Tags: 文件path代码infordatetimeosfs

热门问题