我想监视网络驱动器路径并检测是否复制了任何新目录,然后自动将整个目录复制到本地驱动器。
我有以下几点:
创建一个python脚本,可以维护网络驱动器路径中的文件数,并将其保存到本地临时文件中。
我将每2/3小时运行一次脚本,并将当前目录数与最后一次计数进行比较。如果当前数字大于前一个数字,只需复制这些目录并粘贴到本地目录。通过这种简单的方式我可以发现有没有新的目录,对吗?
但是,我想知道在python中是否还有其他更好的方法或强大的库,这样我就可以轻松地在网络路径中检测新复制的目录。
答案 0 :(得分:0)
我正在使用此库来监控文件系统更改 - https://github.com/gorakhargosh/watchdog/
链接中给出的最简单的例子
import sys
import time
import logging
from watchdog.observers import Observer
from watchdog.events import LoggingEventHandler
if __name__ == "__main__":
logging.basicConfig(level=logging.INFO,
format='%(asctime)s - %(message)s',
datefmt='%Y-%m-%d %H:%M:%S')
path = sys.argv[1] if len(sys.argv) > 1 else '.'
event_handler = LoggingEventHandler()
observer = Observer()
observer.schedule(event_handler, path, recursive=True)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
这意味着您可以自定义自己的逻辑以“保存到本地临时文件”并“将当前目录数与最后一次计数进行比较”。