यहाँ में सेट हो जाता है है मेरी क्रॉन जॉब:क्रॉन नौकरी नहीं वातावरण चर .bashrc
[email protected]:~$ crontab -l
* * * * * /bin/bash -l -c 'source ~/.bashrc; echo $EDITOR > /tmp/cronjob.test'
और ~/.bashrc
फाइल के अंदर, मैं है export EDITOR=vim
, लेकिन अंतिम /tmp/cronjob.test
फ़ाइल में, यह अभी भी खाली है?
तो मैं पर्यावरण चर कैसे प्राप्त कर सकता हूं (.bashrc
फ़ाइल में सेट करें) और इसे मेरे क्रॉन जॉब में उपयोग करें?
[email protected]:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 12.04 LTS
Release: 12.04
Codename: precise
[email protected]:~$ uname -a
Linux dragon 3.2.0-26-generic-pae #41-Ubuntu SMP Thu Jun 14 16:45:14 UTC 2012 i686 i686 i386 GNU/Linux
हैं उपयोग इस:
* * * * * /bin/bash -l -c -x 'source ~/.bashrc; echo $EDITOR > /tmp/cronjob.test' 2> /tmp/cron.debug.res
/tmp/cron.debug.res
में:
...
++ return 0
+ source /home/plee/.bashrc
++ '[' -z '' ']'
++ return
+ echo
Btw, .bashrc
फ़ाइल डिफ़ॉल्ट एक अपवाद है कि मैं एक लाइन जोड़ा साथ, Ubuntu 12.04 के साथ आया है export EDITOR=vim
।
मैं क्रॉन जॉब उपयोग नहीं करते हैं, बजाय, बस सीधे इस कमांड लाइन पर कार्य करें:
source .bashrc; echo $EDITOR # Output: vim
क्या होता है यदि आप एक बिल्ली फ़ाइल में बिल्ली ~/.bashrc' करते हैं तो क्या होता है? – Alex
'बिल्ली ~/.bashrc' से आपका क्या मतलब है? इसमें एक रेखा है: 'निर्यात संपादक = vim'। मैं पूछ रहा हूं कि 'echo' कमांड' $ EDITOR' पर्यावरण चर क्यों नहीं उठाता है। –
अस्पष्ट होने के लिए खेद है, क्रॉन एंट्री में, फ़ाइल को 'स्रोत' करने के बजाय, 'बिल्ली' का उपयोग करके पुष्टि करें कि इसे 'क्रॉन' द्वारा पढ़ा जा सकता है। – Alex