प्रश्न: How do I watch a file for changes using Python? वॉचडॉग का उपयोग करने का सुझाव देता है, लेकिन मुझे लगता है कि यह केवल एक निर्देशिका देखने में सक्षम था, फाइल नहीं।पाइथन का उपयोग करके परिवर्तनों के लिए निर्देशिका नहीं, मैं फ़ाइल कैसे देखूं?
$ python watchdog-test.py ab_test_res.sh &
[1] 30628
[email protected]:~/laike9m$ Traceback (most recent call last):
File "watchdog-test.py", line 15, in <module>
observer.start()
File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/api.py", line 255, in start
emitter.start()
File "/usr/local/lib/python2.7/dist-packages/watchdog/utils/__init__.py", line 111, in start
self.on_thread_start()
File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/inotify.py", line 121, in on_thread_start
self._inotify = InotifyBuffer(path, self.watch.is_recursive)
File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/inotify_buffer.py", line 35, in __init__
self._inotify = Inotify(path, recursive)
File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/inotify_c.py", line 187, in __init__
self._add_dir_watch(path, recursive, event_mask)
File "/usr/local/lib/python2.7/dist-packages/watchdog/observers/inotify_c.py", line 363, in _add_dir_watch
raise OSError('Path is not a directory')
OSError: Path is not a directory
तो सबसे अच्छा समाधान है: watchdog-test.py प्रहरी के नमूने स्क्रिप्ट है? मैं लिनक्स (उबंटू 12.04) का उपयोग कर रहा हूं। बीटीडब्ल्यू मैं मतदान का उपयोग नहीं करना चाहता।
क्या ऑपरेटिंग सिस्टम? मुझे निश्चित रूप से पता नहीं है, लेकिन मुझे लगता है कि विंडोज केवल निर्देशिका देखने में सहायता करता है। –
@ कोलोनेल थर्टी दो लिनक्स। – laike9m
inotify में देखें http://linux.die.net/man/7/inotify –