लिनक्स ओएस के साथ, आयनोटिफ़ाइट सबसिस्टम है जो फ़ाइल सिस्टम में परिवर्तनों के एक आवेदन को सूचित करता है।
हालांकि, मैं मुख्य रूप से एक विंडोज उपयोगकर्ता हूं, इसलिए मैं सोच रहा था कि क्या फाइल सिस्टम परिवर्तनों की निगरानी करने का एक समान तरीका है?
लिनक्स ओएस के साथ, आयनोटिफ़ाइट सबसिस्टम है जो फ़ाइल सिस्टम में परिवर्तनों के एक आवेदन को सूचित करता है।
हालांकि, मैं मुख्य रूप से एक विंडोज उपयोगकर्ता हूं, इसलिए मैं सोच रहा था कि क्या फाइल सिस्टम परिवर्तनों की निगरानी करने का एक समान तरीका है?
जवाबों:
देखें FindFirstChangeNotification एपीआई, या नेट समकक्ष FileSystemWatcher
यदि आप .net का उपयोग कर रहे हैं , तो उपयोग करें FileSystemWatcher
। अधिक जानकारी यहाँ: http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx
आप उपयोग कर रहे हैं सी , उपयोग FindFirstChangeNotification
, FindNextChangeNotification
, ReadDirectoryChangesW
। अधिक जानकारी यहाँ: http://msdn.microsoft.com/en-us/library/aa365261(VS.85..xx
पर OSX , प्रासंगिक एपीआई है fsevents
एपीआई।
वे सभी एक दूसरे से सूक्ष्म रूप से भिन्न हैं, और उन सभी में किनारे के मामलों में संदिग्ध विश्वसनीयता है। सामान्य तौर पर, आप 100% समय के सभी परिवर्तनों को देखने के लिए इन एपिस पर निर्भर नहीं रह सकते। फ़ाइल सिस्टम मॉनिटरिंग का उपयोग करने वाले अधिकांश लोग इसे पुश एपी से खोई या अधूरी जानकारी की भरपाई के लिए समय-समय पर स्कैन के साथ जोड़ते हैं।
इस पर एक नज़र: inotify-win, विंडोज के लिए inotifywait टूल का एक पोर्ट
और यह भी: inotify-tools
थोड़ी देर लेकिन लेकिन ...
विंडोज़ में OSX घटनाओं के समान एक सुविधा है जिसके द्वारा आप बिना ऐप चलाए घटनाओं की निगरानी कर सकते हैं। Windows USN जर्नल सभी फ़ाइल परिवर्तनों का ट्रैक रखता है। जेफरी रिक्टर (उन्नत विंडोज के लेखक) ने MSDN जर्नल के लिए काम करने वाले नमूनों के साथ एक शानदार लेख लिखा । अद्यतन करें : अब MSJ में अब ऑनलाइन से आर्काइव.ऑर्ग का लेख ऑनलाइन नहीं है।
यूएसएन परिवर्तन पत्रिकाओं के लिए MSDN प्रलेखन।
यूएसएन चेंज जर्नल्स संभवतः बेहतर होते हैं यदि आप बैकअप टूल या इंडेक्स जैसे एप्लिकेशन का निर्माण कर रहे होते हैं जो पूरे संस्करणों की निगरानी करने की आवश्यकता होती है।
FileSystemWatcher
| FindFirstChangeNotification
PhillipBrandonHolmes की बात कर रहा था ?
FileSystemWatcher () मुख्य रूप से इस तथ्य के कारण अविश्वसनीय है कि वॉचर बफर के लिए त्रुटि हैंडलिंग कम या ज्यादा अधूरी है। पथ की कमी और विस्तृत त्रुटि से निपटने की जानकारी के कारण, Microsoft आपको कार्यशील निर्देशिका को पुनर्प्राप्त करने या मैन्युअल रूप से चुनने का कोई रास्ता नहीं देता है।
विंडोज के लिए JNotify अविश्वसनीय भी है क्योंकि यह बग ^32 से निकलता है। JNotify win32 का उपयोग करता है। तो, यह FileSystemWatcher () से अलग नहीं है।
मैंने थोड़ी खोज की, मुझे लगता है कि विंडोज के लिए कुछ ऐसा ही था। नहीं है FileSystemWatcher नेट के लिए। इसका मुख्य रूप से NT या XP और आगे के लिए।