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

Popular posts from this blog

oracle - The fastest way to check if some records in a database table? -

php - multilevel menu with multilevel array -

jQuery UI: Datepicker month format -