मैं एक स्क्रिप्ट बनाना चाहता हूं जो एक txt फ़ाइल में दिनांक और समय के लेखन को शेड्यूल करता है।
*1 * * * * date >> ultimoscript.txt
अब मुझे यह जानने की जरूरत है कि यह क्रॉस्टैब कहां है या मैं स्क्रिप्ट का उपयोग करके पिछला कोड कैसे लिख सकता हूं।
मैंने crontab -e के साथ प्रयास किया लेकिन यह संभव नहीं है
contrab - e *1 * * * * date >> ultimoscript.txt
मुझे इसे हल करने की आवश्यकता है क्योंकि मैं सीधे क्रोंटैब का उपयोग नहीं कर सकता, इसे एक स्क्रिप्ट के माध्यम से होना चाहिए जो प्रोग्राम क्रॉस्टैब।
2 जवाब
crontab -l > tempfile
crontab <<EOF
`cat tempfile`
* * * * * date >> ultimoscript.txt
EOF
उपरोक्त कोड उपयोगी है यदि आप वर्तमान crontabs में crontab प्रविष्टि जोड़ना चाहते हैं। यहाँ स्पष्टीकरण है:
Crontab -l वर्तमान उपयोगकर्ता के लिए वर्तमान crontab प्रविष्टियों को सूचीबद्ध करता है। इसे एक अस्थायी फ़ाइल में सहेजें। हम tempfile में एक नई crontab प्रविष्टि जोड़ने जा रहे हैं।
कमांड सिर्फ क्रोंटैब है। जब क्रॉस्टैब को मापदंडों के बिना लागू किया जाता है, तो यह सभी क्रॉन प्रविष्टियों को इसके स्टड के साथ बदल देता है। इस मामले में, हम एक हेरेडोक (< . के बीच की सामग्री) से स्टड को पुनर्निर्देशित कर रहे हैं
अगर मैं इस तरह से कोड लिखता तो मैं इसे और अधिक पठनीय मानता, लेकिन मैं आपको ऊपर एक त्वरित उत्तर दे रहा था:
crontab -l > tempfile
echo '* * * * * date >> ultimoscript.txt' >>tempfile
crontab <tempfile
आप रन कमांड द्वारा संपादित कर सकते हैं:
crontab -e
और फिर वहां डालें:
* * * * * date >> ultimoscript.txt
क्रोंटैब को सहेजें और क्रॉन सेवा को पुनरारंभ करें
संबंधित सवाल
नए सवाल
bash
बैश कमांड शेल के लिए लिखी गई लिपियों के बारे में प्रश्नों के लिए। त्रुटियों / वाक्यविन्यास त्रुटियों के साथ शेल स्क्रिप्ट के लिए, कृपया यहां पोस्ट करने से पहले शेलचेक प्रोग्राम (या वेब शेलचेक सर्वर पर https://shellcheck.net) के साथ उन्हें जांचें। बैश के इंटरैक्टिव उपयोग के बारे में सवाल स्टैक ओवरफ्लो की तुलना में सुपर उपयोगकर्ता पर ऑन-टॉपिक होने की अधिक संभावना है।