+1 امتیاز
قبل در کامپیوتر و اینترنت توسط (1.1هزار امتیاز)

یک shell script دارم که دستورات متعددی را پشت سر هم اجرا می کند، وقتی یکی از دستورات خطا می دهد کماکان بقیه دستورات اجرا می شود، می خواهم در صورت بروز هر خطایی در اجرای هر کدام از دستورات درون shell script، دیگر ادامه اسکریپت اجرا نشود، چگونه می توانم این کار را انجام دهم؟

1 پاسخ

+1 امتیاز
قبل توسط (1.1هزار امتیاز)

برای این کار کافی است دستورات زیر را در ابتدای فایل shell script کپی کنید:

set -e
set -o pipefail

دستور "set -e" باعث خروج از اجرای اسکریپت در صورت بروز خطا در هر دستور ساده ای می شود و دستور "set -o pipefail" نیز باعث خروج از اجرای اسکریپت در صورت بروز خطا در هر دستور درون pipeline می شود.

سوالات مشابه

0 امتیاز
1 پاسخ 853 بازدید
+1 امتیاز
2 پاسخ 634 بازدید
0 امتیاز
1 پاسخ 444 بازدید
+1 امتیاز
1 پاسخ 861 بازدید
0 امتیاز
1 پاسخ 707 بازدید
0 امتیاز
1 پاسخ 569 بازدید
0 امتیاز
1 پاسخ 452 بازدید
0 امتیاز
1 پاسخ 390 بازدید
...