2011-10-06 10 views
6

मेरे पास एक शेल स्क्रिप्ट है जो हर दिन मेरे सर्वर पर चलती है। यह कुछ घर की सफाई करता है और एक दूरस्थ होस्ट से कनेक्ट करता है अन्य कार्यों यानीरिमोट स्क्रिप्ट के लिए निकास कोड कैप्चर करें?

#!/bin/bash 

#do something... 
...locally... 

#run remote script... 
ssh [email protected] "/opt/process/verify.sh" 

exit 

यह ठीक काम करता है, लेकिन सुरक्षित मैं कब्जा करने के लिए (यदि संभव हो) "से/opt/प्रक्रिया/सत्यापित वापसी कोड चाहते हैं होने के लिए प्रदर्शन करने के लिए .sh 1 "यानी

  • अगर असफल, वापसी" "और
  • व्यवस्थापक यदि सफलता, लौट ईमेल भेजने के लिए" 0 "और डेवलपर को ईमेल भेजें।

मैंने trap कमांड के बारे में पढ़ना शुरू कर दिया। क्या मैं इसका उद्देश्य उस उद्देश्य के लिए उपयोग कर सकता हूं? क्या कोई और विकल्प है?

उत्तर

18

ssh प्रश्न में कमांड का वापसी मूल्य लौटाता है, या 255 यदि ssh में कोई त्रुटि आई है। बस इस मूल्य की जांच करें और उचित कार्रवाई करें।

8

आप $ का उपयोग कर सकते हैं? प्रतिक्रिया कोड प्राप्त करने के लिए चर। उदाहरण के लिए:

% ssh somebox /bin/true 
% echo $? 
0 
% ssh somebox /bin/false 
% echo $? 
1 
संबंधित मुद्दे