मैं एक स्क्रिप्ट लिख रहा हूं source, जिसका उपयोग करके निष्पादित करने की आवश्यकता है , क्योंकि इसका कार्य पर्यावरण को संशोधित करना है। स्क्रिप्ट के दौरान, मैं उपयोग करना चाहता हूं set -eताकि कोई भी त्रुटि स्क्रिप्ट को रोक दे। स्क्रिप्ट इस प्रकार है:
#!/bin/bash
set -e
# do something
cd somewhere
source anotherScript
समस्या यह है कि set -eस्क्रिप्ट खत्म होने के बाद स्वाभाविक रूप से प्रभाव में रहता है। मैं यह कैसे सुनिश्चित कर सकता हूं कि setजब स्क्रिप्ट बंद हो जाती है (किसी भी तरह से - सफलतापूर्वक पूरा करके या किसी त्रुटि पर) तो परिवर्तित विकल्प को इसके प्रचलित मूल्य पर ठीक से रखा जा सकता है?