根据我找到的其他答案,我已经给了它一个不错的尝试,但没有管理任何可靠的东西(我的解决方案非常慢,但也许没有其他方法)。基本上,我有一个名为“scratch”的文件夹,用户可以在其中创建自己的文件夹来转储他们的数据。
我需要我的脚本来找出哪些用户的文件夹超过 30 天没有使用。我想我可以通过在用户文件夹中找到最近修改的目录(通过递归搜索)然后过滤掉较旧的目录来做到这一点。
获取用户目录列表的代码:
dirlist = list()
for filename in os.listdir("\\\\abg-netapp1\\Scratch\\"):
dirlist.append(filename)
然后我可以遍历“dirlist”的每个索引来创建一个完整的搜索路径:
x=0
for item in dirlist:
max_mtime = 0
for dirname,subdirs,files in os.walk("\\\\abg-netapp1\\Scratch\\" + dirlist[x]):
for fname in subdirs:
full_path = os.path.join(dirname, fname)
mtime = os.stat(full_path).st_mtime
if mtime > max_mtime:
max_mtime = mtime
max_dir = dirname
max_file = fname
print max_dir, max_file, time.strftime('%Y-%m-%d', time.localtime(max_mtime))
x+=1
我确实知道我还没有过滤掉超过 30 天的目录,只是想看看我是否可以用这段代码更改任何内容。
我是不是走错了路,有没有更简单的解决方案?有什么问题或者其他什么都可以告诉我,谢谢!