2013-04-26 12 views
38

मेरे पास एक फ़ाइल है। जब यह रन शो: TERM पर्यावरण चर सेट नहीं है।TERM पर्यावरण चर सेट नहीं

smbmount //172.16.44.9/APPS/Interfas/HERRAM/sc5 /mnt/siscont5 -o 
iocharset=utf8,username=backup,password=backup2011,r 

if [ -f /mnt/siscont5/HER.TXT ]; then 
    echo "No puedo actualizar ahora" 
    umount /mnt/siscont5 
else 
    if [ ! -f /home/emni/siscont5/S5.TXT ]; then 
     echo "Puedo actualizar... " 
     touch /home/emni/siscont5/HER.TXT 
     touch /mnt/siscont5/SC5.TXT 
     mv -f /home/emni/siscont5/CCORPOSD.DBF /mnt/siscont5 
     mv -f /home/emni/siscont5/CCTRASD.DBF /mnt/siscont5 
     rm /mnt/siscont5/SC5.TXT 
     rm /home/emni/siscont5/HER.TXT 
     echo "La actualizacion ha sido realizada..." 
    else 
     echo "No puedo actualizar ahora: Interfaz exportando..." 
    fi 
fi 
umount /mnt/siscont5 
echo "/mnt/siscont5 desmontada..." 
+12

यह अच्छा है। क्या आपके पास कोई सवाल है? –

+0

सर्वर ठीक चल रहा है, क्रॉन इसे हर 2 मिनट में कॉल करता है, लेकिन कभी-कभी टीईआरएम पर्यावरण चर सेट नहीं करता है, फिर .sh कुछ भी नहीं करता है। – meyquel

+0

मेरे पास एक ही सर्वर में कुछ है .sh कि समय के अलग अंतराल में क्रॉन कॉल। – meyquel

उत्तर

67

आप देख सकते हैं, तो यह वास्तव में है नहीं निर्धारित किया है। set | grep TERM आदेश चलाएं।

यदि नहीं, तो आप इसे इस तरह सेट कर सकते हैं:

क्रॉन इस .sh हर 2 मिनट

क्रॉन कॉल: export TERM=xterm

+10

निर्यात TERM = linux भी काम करता है –

5

आप इस कथन से प्रश्न का उत्तर दिया टर्मिनल में नहीं चलता है, तो आप एक को क्यों सेट करने की उम्मीद करेंगे?

यह त्रुटि संदेश प्राप्त करने का सबसे आम कारण यह है कि स्क्रिप्ट उपयोगकर्ता के .profile को स्रोत करने का प्रयास करती है जो यह जांच नहीं करती है कि यह कुछ tty संबंधित करने से पहले टर्मिनल में चल रहा है। समाधान की तरह एक कुटिया लाइन का उपयोग शामिल है:

#/bin/bash -p

कौन सा सिस्टम स्तर प्रोफ़ाइल लिपियों के सोर्सिंग जो (एक उम्मीद) कुछ भी भी मूर्ख करने के लिए प्रयास नहीं करता है और होगा का कारण बनता है कोड के चारों ओर गार्ड जो टर्मिनल से चलने पर निर्भर करता है।

यदि यह स्क्रिप्ट की संपूर्णता है, तो TERM स्क्रिप्ट की सादा सामग्री की तुलना में अन्य से त्रुटि आ रही है।

+0

स्क्रिप्ट फिनली कैसे दिखता है ??? – meyquel

+0

अन्य .sh समय के अलग-अलग अंतराल में क्रॉन द्वारा कॉल कर रहा है, जब यह त्रुटि रीबूट कॉमांड दिखाई नहीं देती है ... – meyquel

+0

मुझे खेद है, लेकिन मुझे यह समझना बहुत मुश्किल लगता है कि आप इन टिप्पणियों में क्या कह रहे हैं। वर्णित शेबांग लाइन स्क्रिप्ट की शुरुआत में होनी चाहिए - पहली पंक्ति। किसी अन्य स्क्रिप्ट के बारे में कुछ भी नहीं बताया गया है, और यदि रीबूट काम नहीं कर रहा है, लेकिन आप रूट के रूप में चल रहे हैं, तो आपके पास सिस्टम के साथ कुछ और गलत है। – Petesh

21

क्रॉन (कोई टर्मिनल) नामक एक स्क्रिप्ट में टर्मिनल कमांड यानी "स्पष्ट" का उपयोग करके इस त्रुटि संदेश को ट्रिगर करेगा। आपकी विशेष लिपि में, smbmount कमांड टर्मिनल की अपेक्षा करता है जिस स्थिति में उपरोक्त कार्य-आसपास उपयुक्त हैं।

+7

यह मेरे लिए मुद्दा था –

+2

'clear' (या अन्य टर्मिनल कमांड) यदि' .bashrc' में जोड़ा गया है या '.bashrc' से बुलाए गए अन्य स्क्रिप्ट्स का परिणाम होगा, तो इसका परिणाम होगा। – madD7

संबंधित मुद्दे