+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 پاسخ 755 بازدید
+1 امتیاز
2 پاسخ 522 بازدید
0 امتیاز
1 پاسخ 349 بازدید
+1 امتیاز
1 پاسخ 760 بازدید
0 امتیاز
1 پاسخ 612 بازدید
0 امتیاز
1 پاسخ 473 بازدید
0 امتیاز
1 پاسخ 359 بازدید
0 امتیاز
1 پاسخ 302 بازدید
...