我正在ODI中开发代码。我需要在目录中获取上次修改文件的日期/时间,并检查上次修改文件的日期/时间是否大于5分钟;然后将该文件夹中的所有文件复制到另一个文件夹。如果不到5分钟,请等待2分钟再重新检查。
我已经通过.bat文件获取了目录中最后一个修改过的文件的日期/时间。我将输出存储在.txt文件中,然后将该文件加载到临时接口中以检查时间是否大于5分钟。
我想通过Python脚本实现我的要求,因为我希望它能在ODI程序的一个步骤中完成。
请帮忙。
提前致谢
答案 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)