जीआरईपी कर सकते हैं | Crontab सभी नौकरियों को नष्ट कर?


21

मेरे सहयोगी दौड़े grep | crontab। इसके बाद सभी नौकरियां गायब हो गईं। लगता है कि वह दौड़ना चाह रहा था crontab -l

तो कमांड चलाने के बाद क्या हुआ grep | crontab? क्या कोई समझा सकता है?

जवाबों:


33

crontabSTDIN से पढ़ने वाले crontab(या उल्लिखित उपयोगकर्ता root) के लिए नया इंस्टाल कर सकते हैं । यह आपके मामले में खुश है।

grepकिसी भी विकल्प के बिना हमेशा की तरह STDERR पर एक त्रुटि संदेश उत्पन्न होगा और आप grepSTDIN के STDOUT को पाइप कर रहे हैं , crontabजिसमें से रिक्त है इसलिए आपका काम चल crontabजाएगा।


4
मानक इनपुट से पढ़ने के लिए आपको फ़ाइल नाम के रूप में crontabउपयोग करने की आवश्यकता होती है -। मुझे लगता है कि ऐसा इसलिए है क्योंकि बहुत से लोगों ने इस तरह की गलतियों के साथ अपने crontabs को उड़ा दिया।
बमर

4

उसने नौकरी कैसे समाप्त कर दी? क्या उसने Cc या Cd टाइप किया? यदि उसने Cd टाइप किया है, तो यह चलने के बराबर है crontab < /dev/nullऔर आपने उपयोगकर्ता की crontab फ़ाइल को एक खाली के साथ बदल दिया है। दूसरी ओर, यदि आप crontabCc से मारते हैं , तो crontab को संरक्षित किया जा सकता है, लेकिन आप इसे चलाकर आसानी से देख सकते हैं crontab -l

यह सब कार्यक्रम में crontab फ़ाइलों को संपादित किया जाता है /var/spool/cron/, इसलिए यदि आपके पास फ़ाइल सिस्टम का बैकअप है, तो आप उपयोगकर्ता की crontab फ़ाइल को वहां से पुनर्स्थापित कर सकते हैं।

अद्यतन करें

मैंने नहीं देखा कि grep का कोई तर्क नहीं था, इसलिए grep त्रुटि करेगा और वास्तव में crontab फ़ाइल हमेशा के लिए उड़ा दी जाएगी।


1
आपको Cc या Cd की आवश्यकता नहीं है crontab पहले से ही चला जाएगा
DarkHeart
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.