+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 پاسخ 757 بازدید
+1 امتیاز
2 پاسخ 534 بازدید
0 امتیاز
1 پاسخ 351 بازدید
+1 امتیاز
1 پاسخ 765 بازدید
0 امتیاز
1 پاسخ 617 بازدید
0 امتیاز
1 پاسخ 479 بازدید
0 امتیاز
1 پاسخ 362 بازدید
0 امتیاز
1 پاسخ 304 بازدید
...