मैं बस एक अलग दुनिया से यूनिक्स में कूद रहा हूं, और जानना चाहता हूं कि क्या
while true
do
/someperlscript.pl
done
पर्ल स्क्रिप्ट में आंतरिक रूप से एक फ़ोल्डर / फ़ाइल द्रष्टा होता है जो लक्ष्य स्थान में फ़ाइलों को बदलने पर निष्पादित होता है।
क्या यह ( while true
) एक अच्छा विचार है? यदि नहीं, तो एक पसंदीदा मजबूत दृष्टिकोण क्या है?
TIA
संपादित करें: चूंकि यह ब्याज की एक उचित बिट उत्पन्न करता है, इसलिए यहां पूरा परिदृश्य है। पर्ल स्क्रिप्ट अपने आप में एक फाइल वॉचर का उपयोग करके एक डायरेक्टरी देखती है। नई फ़ाइलों को प्राप्त करने पर (वे rsync के माध्यम से पहुंचते हैं), यह नए को चुनता है और इसे संसाधित करता है। अब आने वाली फाइलें भ्रष्ट हो सकती हैं (पूछें नहीं .. रास्पबेरी पाई से आ रही हैं), और कभी-कभी यह प्रक्रिया इससे निपटने में सक्षम नहीं हो सकती है। मुझे ठीक-ठीक पता नहीं है, क्योंकि हम अभी तक सभी परिदृश्यों से अवगत नहीं हैं।
लेकिन - यदि प्रक्रिया किसी कारण से विफल हो जाती है, तो हम चाहते हैं कि यह ऊपर और चल रहा है और अगली फ़ाइल से निपटें, क्योंकि अगली फ़ाइल पिछले एक से पूरी तरह से असंबंधित है जो त्रुटि का कारण हो सकती है।
आमतौर पर मैं किसी न किसी तरह से सभी को पकड़ लेता था और इसके चारों ओर पूरे कोड को लपेट देता था ताकि यह दुर्घटनाग्रस्त हो जाए। लेकिन पर्ल के लिए निश्चित नहीं था।
मैंने जो कुछ भी समझा है, उसमें से पर्यवेक्षक की तरह कुछ का उपयोग करना इसके लिए एक अच्छा तरीका है।
inotify
एपीआई की जांच कर सकते हैं ताकि आप अपने लक्ष्य निर्देशिका में बदलने के लिए फाइलों के इंतजार में व्यस्त लूप से बच सकें।