如何使用Python获取文件夹中最后修改文件的时间

时间:2017-06-23 14:10:40

标签: python oracle-data-integrator

我正在ODI中开发代码。我需要在目录中获取上次修改文件的日期/时间,并检查上次修改文件的日期/时间是否大于5分钟;然后将该文件夹中的所有文件复制到另一个文件夹。如果不到5分钟,请等待2分钟再重新检查。

我已经通过.bat文件获取了目录中最后一个修改过的文件的日期/时间。我将输出存储在.txt文件中,然后将该文件加载到临时接口中以检查时间是否大于5分钟。

我想通过Python脚本实现我的要求,因为我希望它能在ODI程序的一个步骤中完成。

请帮忙。

提前致谢

1 个答案:

答案 0 :(得分:1)

如果文件夹中的上次修改文件超过5分钟,则删除该文件 没有递归:

import os
import time

folder = 'pathname'

files = [(f, os.path.getmtime(f)) for f in os.listdir(folder) 
                if os.path.isfile(f)]

files = sorted(files, key=lambda x: x[1], reverse=True)

last_modified_file = None if len(files) == 0 else files[0][0]

# get age file in minutes from now
def age(filename):
    return (time.time() - os.path.getmtime(filename))//60

if last_modified_file is not None:
    if age(last_modified_file) >= 5:
        os.remove(last_modified_file)