我知道如何列出目录树中的所有子目录和文件.但我正在寻找方法列出所有新创建的文件,修改和(如果可能)从根目录开始在目录树中的所有目录中删除的文件.
unu*_*tbu 15
您可以通过查看每个文件的"mtime"找到在过去半小时内创建或修改的所有文件:
import os
import datetime as dt
now = dt.datetime.now()
ago = now-dt.timedelta(minutes=30)
for root, dirs,files in os.walk('.'):
for fname in files:
path = os.path.join(root, fname)
st = os.stat(path)
mtime = dt.datetime.fromtimestamp(st.st_mtime)
if mtime > ago:
print('%s modified %s'%(path, mtime))
Run Code Online (Sandbox Code Playgroud)
要生成已删除文件的列表,您还必须在30分钟前拥有一个文件列表.
更强大的替代方案是使用类似的修订控制系统git.提交目录中的所有文件就像制作快照一样.然后命令
git status -s
Run Code Online (Sandbox Code Playgroud)
将列出自上次提交以来已更改的所有文件.这将列出已删除的文件.
| 归档时间: |
|
| 查看次数: |
17163 次 |
| 最近记录: |