请写一段python脚本,要求如下: 1.检测某一文件夹及其子文件夹下是否有文件新增,如果有,将此文件名打印出来
时间: 2024-02-20 21:59:56 浏览: 26
好的,这是一个可以实现您要求的Python脚本:
```python
import os
import time
path_to_watch = "/path/to/watch" # 监控的文件夹路径
before = dict([(root, [f for f in files if not f.startswith('.')]) for root, dirs, files in os.walk(path_to_watch)]) # 初始文件夹及子文件夹中的文件
while True:
time.sleep(10) # 每10秒检查一次
after = dict([(root, [f for f in files if not f.startswith('.')]) for root, dirs, files in os.walk(path_to_watch)]) # 当前文件夹及子文件夹中的文件
added = []
for root in after:
if root not in before:
added.extend(after[root]) # 如果是新的文件夹,则将其中的所有文件都视为新增文件
else:
added.extend([f for f in after[root] if f not in before[root]]) # 检查每个文件夹中是否有新增文件
if added:
print("新增文件: ", ", ".join(added)) # 打印新增文件名
before = after # 更新初始文件夹及子文件夹中的文件
```
您需要将 `path_to_watch` 变量替换成您要监控的文件夹路径,然后运行脚本即可。脚本会每10秒检查一次文件夹及其子文件夹中是否有新增文件,如果有则打印出文件名。