2012-05-09 51 views
8

Tôi đang cố sử dụng Python Watchdog để giám sát một thư mục để thay đổi. Tuy nhiên, khi tôi cố gắng chạy ví dụ Quickstart:Kịch bản lệnh watchdog của Python không hoạt động đúng cách

import time 
from watchdog.observers import Observer 
from watchdog.events import LoggingEventHandler 

if __name__ == "__main__": 
    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() 

bằng cách đặt trong đó các tập tin test.py, không có gì hiển thị trong cửa sổ Terminal nơi tôi chạy nó. Điều gì gây ra điều này xảy ra và làm cách nào để khắc phục sự cố?

+1

Bạn có đang thực hiện thay đổi trong thư mục không? –

+0

Có. Tôi đã thử thực hiện một số thay đổi, bao gồm tạo và xóa thư mục cũng như tạo và xóa tệp. –

Trả lời

14

Hãy thử ví dụ trên github: https://github.com/gorakhargosh/watchdog

Ví dụ này dường như làm việc như trái ngược với một trên trang tài liệu mà không.

+0

Cảm ơn bạn. Tôi đã gắn ví dụ trên Github và nó hoạt động. Tuy nhiên, nó không có vẻ để phát hiện tập tin hoặc thư mục xóa. –

+1

Điều gì xảy ra - bạn có thấy bất kỳ lỗi nào không? Điều này có thể xảy ra với tôi. Bạn đang chạy nó với một đối số để trỏ nó vào một thư mục? Ví dụ: ** 'python watch.py" foo "' **? Nếu tôi làm điều đó bằng cách sử dụng: ** 'python watch.py". "' ** thì nó sẽ xem thư mục hiện tại không có vấn đề gì và hiển thị thư trong bảng điều khiển trên bất kỳ tệp nào (bao gồm tạo và xóa cả tệp và thư mục). – carboncrank

+0

Tôi đã chạy tập lệnh với một đối số để chuyển sang thư mục. Kịch bản lệnh in ra các sự kiện tạo tệp và thư mục, nhưng nó vẫn không in ra các sự kiện xóa. –

Các vấn đề liên quan