检测新目录?

时间:2013-05-12 11:41:47

标签: python directory

我想监视网络驱动器路径并检测是否复制了任何新目录,然后自动将整个目录复制到本地驱动器。

我有以下几点:

  1. 创建一个python脚本,可以维护网络驱动器路径中的文件数,并将其保存到本地临时文件中。

  2. 我将每2/3小时运行一次脚本,并将当前目录数与最后一次计数进行比较。如果当前数字大于前一个数字,只需复制这些目录并粘贴到本地目录。通过这种简单的方式我可以发现有没有新的目录,对吗?

  3. 但是,我想知道在python中是否还有其他更好的方法或强大的库,这样我就可以轻松地在网络路径中检测新复制的目录。

1 个答案:

答案 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()

这意味着您可以自定义自己的逻辑以“保存到本地临时文件”并“将当前目录数与最后一次计数进行比较”。

相关问题