bash - Kill sibling process -
मुझे एक स्क्रिप्ट है जिसे:
- एक
ट्रिगर करें 2 & amp; & gt; 1 | कम-आर
- फ़ोल्डर में हर परिवर्तन को सुनें (
inotifywait -R का उपयोग करके)
जब फ़ोल्डर संशोधित होता है , स्क्रिप्ट को
कम प्रक्रिया को मारना होगा और पुनरारंभ करना होगा।
मुझे यह करने के लिए सही तरीके के बारे में निश्चित नहीं है (चलाने के लिए स्क्रिप्ट की दो शाखाओं को अनुमति दें समांतर में + देखे जाने की नौकरी को
कम नौकरी के बारे में पता करने की अनुमति देता है, क्योंकि बाद वाले को अग्रभूमि में होना है)।
अगर आप हर बार कुछ बदल गया है, तो आप स्वचालित रीकंपाइल ट्रिगर करना चाहते हैं, तो आप निम्न प्रयास कर सकते हैं:
जबकि inotifywait -qqr / dir /देखने के लिए; बनाओ | कम किया गया
मुझे एहसास है कि यह समाधान प्रत्येक कमांड को हर बार पुनः कंपाइल जारी करने से नहीं मारता
उपर्युक्त एक मामूली भिन्नता निम्न के बाद कम करना है: <पूर्व>
जबकि inotifywait -qqr / dir / to / watch; करो कम
यह संस्करण तुरंत पुनः कंपाइल को ट्रिगर करेगा (पहले मेक समाप्त होने के बाद), लेकिन यह आपको कम से कम आउटपुट के माध्यम से पृष्ठ की आवश्यकता होगी (और इसके साथ इसे समाप्त न करें क्यू)
यहां एक और संस्करण है जिसे आप के साथ खेलना चाहते हैं। यदि आप कोड को बदलते हैं, तो इस संस्करण में एक चल रहे मारे गए और पुनः आरंभ किए जाएंगे। हालांकि, आउटपुट की कोई स्क्रीन पेजिंग नहीं होगी (यह पृष्ठभूमि प्रक्रिया के साथ गठजोड़ करना मुश्किल है):
BGPID = 0 जबकि inotifywait -qqr / dir / to / watch; ["$ BGPID" -gt 1] और amp; amp; $ BGPID को मार डालें (बनायें- पूंछ- f) & amp; BGPID = $! किया
- फ़ोल्डर में हर परिवर्तन को सुनें (
Comments
Post a Comment