क्रोन शेल (बाश करने के लिए) कैसे बदलें?


70

क्या sh के बजाय bash के साथ crontab में कमांड बनाना संभव है? मुझे पता है कि आप आदेशों को तोड़ सकते हैं -c, लेकिन यह कष्टप्रद है और मैं कभी भी श का उपयोग नहीं करता हूं।


वास्तव में नहीं जानते कि आप क्या कर रहे हैं (क्रोन से परिचित नहीं हैं) लेकिन अगर आप एक स्क्रिप्ट चला रहे हैं तो इसमें एक शेबंग को जोड़ना चाहिए, यह सुनिश्चित करना चाहिए कि मैं सही हूं या नहीं।
एल्विन वोंग

जवाबों:


103

क्रोन जॉब चलाने से पहले आपको पर्यावरण चर सेट करने में सक्षम होना चाहिए:

SHELL=/bin/bash
5 0 * * *       $HOME/bin/daily.job >> $HOME/tmp/out 2>&1

2
क्या यह संभव है कि इसे भी पढ़ा जाए।
शराबी

3
@Fluffy .bashrcहै - परिभाषा के अनुसार - इंटरैक्टिव गोले के लिए; इसलिए जब इसके माध्यम से शुरुआत की जाती है cron, bashतो यह फ़ाइल केवल तभी पढ़ेगी जब यह एक इंटरैक्टिव शेल हो
umläute

18
मैं इसे जोड़कर bashrc पढ़ने में सक्षम था BASH_ENV="/root/.bashrc"। धन्यवाद
शराबी

2
@ पूरी बात आपको यह उत्तर देना चाहिए
vol7ron

2
के बारे में .bashrc, bash -lलग रहा है उपयोगी, blog.endpoint.com/2015/02/cron-wrapper-keep-your-cron-jobs.html
mpapec
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.