脚本中包含一个监视程序算法,我从这里开始对其进行了改编: https://www.michaelcho.me/article/using-pythons-watchdog-to-monitor-changes-to-a-directory
我现在的目标是添加几行来获取已修改文件的名称,这样我就可以使用if语句来检查某个文件,例如:
if [modified file name] == "my_file":
print("do something")
我没有看门狗或看文件的经验,因此我正在努力寻找答案。我将如何收到修改后的文件名?
答案 0 :(得分:1)
看门狗类的当前设置几乎没有用,因为它只打印...不返回任何内容。
让我提供另一种方法:
以下信息将为您提供过去12小时内修改的文件列表:
result = [os.path.join(root,f) for root, subfolder, files in os.walk(my_dir)
for f in files
if dt.datetime.fromtimestamp(os.path.getmtime(os.path.join(root,f))) >
dt.datetime.now() - dt.timedelta(hours=12)]
您可以保存last_search_time而不是固定的增量时间,并将其用于以后的搜索中。
然后您可以搜索结果以查看其中是否包含文件:
if my_file in result:
print("Sky is falling. Take cover.")