我可以打印文件的mtime属性。我只关心在最后xxxx分钟数内修改的文件。我触摸了目录中的文件,所以我知道那里有新文件。
file_list_attr = sftp.listdir_attr('/path')
fdir = sftp.listdir(path=source)
for f in file_list_attr:
print "name=%s, modified date=%s, size=%s" % (f.filename, f.st_mtime,f.st_size)
mt = f.st_mtime
now=dt.datetime.now()
while f.st_mtime == now-dt.timedelta(minutes=2120):
print 'You have something here'
else:
print 'nada'
答案 0 :(得分:1)
问题似乎在于你如何检查mtime。
不应该这一行:
while f.st_mtime == now-dt.timedelta(minutes=2120):
如:
while f.st_mtime > now-dt.timedelta(minutes=2120):
或更好:
delta = dt.timedelta(minutes=2120)
while f.st_mtime > dt.datetime.now() - delta:
# ...
因为如果你没有重新计算你现在的日期,我就没有看到循环的重点。