Crontab, मार और जाल का उपयोग


0

मैं crontabकमांड सीख रहा हूं , और कुछ कोशिशें कर रहा हूं।

मैंने कमांड के साथ डिफ़ॉल्ट क्रॉस्टैब फ़ाइल को संपादित किया crontab -e, और मैं एक पंक्ति रखना चाहता हूं कि हर मिनट वर्तमान शेल प्रक्रिया ( पीआईडी ​​14515 ) को एक SIGUSR1 भेजें , और फिर, संकेत प्राप्त होने के बाद, एक डिफ़ॉल्ट संदेश को stdout में प्रिंट करें।

मैं इस पंक्ति को जोड़ता हूं:

1 * * * * kill -USR1 14515 | trap "echo Sigusr1 received" SIGUSR1

लेकिन एक मिनट के बाद मुझे अपने टर्मिनल पर कुछ भी नहीं दिखाई दिया। क्या गलत है? क्या मैं इस काम को करने के लिए अन्य तरीके का उपयोग कर सकता हूं?


जवाबों:


1

इसके साथ कुछ मुद्दे। सबसे पहले, crontab फ़ाइल में कुछ भी पृष्ठभूमि में चलाया जाता है, आपके टर्मिनल में नहीं। तो वहाँ कोई भी "प्रतिध्वनि" दिखाई नहीं देगी (जब तक कि यह आपको ईमेल में नहीं भेजा जाता)।

मारने को वहां छोड़ने की कोशिश करें (मुझे यकीन है कि आप जानते हैं कि यदि आप लॉग आउट करते हैं तो यह बदल जाएगा), लेकिन 'ट्रैप' को अपने शेल में स्थानांतरित करें।

साथ ही, आपकी पंक्ति, जैसा कि लिखा गया है, केवल हर घंटे (2:01, 3:01, आदि) के पहले मिनट पर चलेगी। यदि आप हर मिनट चलाना चाहते हैं, तो करें:

 * * * * * kill -USR1 PID

अरे हाँ! अब यह काम कर रहा है!! सुझाव के लिए धन्यवाद।
करोल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.