Bash: run command before a script exits? -
यदि एक bash स्क्रिप्ट में set -e
है, और स्क्रिप्ट में एक कमांड एक त्रुटि देता है, उदाहरण के लिए:
#! / Bin / bash set -e mkdir / tmp / foo # ... के रूप में मैं कैसे कुछ सफाई कर सकता हूं? सामग्री ... आरएम -आर / टीएमपी / एफयू
मैं यह कैसे सुनिश्चित कर सकता हूं कि / tmp / foo
हटा दिया गया है, भले ही ... काम करते हैं ...
विफल रहता है?
यहाँ जाल का उपयोग करने का एक उदाहरण है :
<पूर्व> #! / Bin / bash set -e फ़ंक्शन क्लीनअप {इको "को हटाने / टीएमपी / एफू" rm -r / tmp / foo} जाल क्लीनअप EXIT mkdir / tmp / fooochidsa #Fails
आउटपुट:
dbrown @ लक्जरी: ~ $ sh traptest t: पंक्ति 9: तुच्छदादा: आदेश नहीं मिला / tmp / foo dbrown @ लक्जरी: ~ $
ध्यान दें कि यद्यपि कुंडदे की लाइन विफल रही है, फिर भी साफ किया गया है।
Comments
Post a Comment