+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 پاسخ 660 بازدید
+1 امتیاز
2 پاسخ 481 بازدید
0 امتیاز
1 پاسخ 260 بازدید
+1 امتیاز
1 پاسخ 648 بازدید
0 امتیاز
1 پاسخ 520 بازدید
0 امتیاز
1 پاسخ 355 بازدید
0 امتیاز
1 پاسخ 278 بازدید
0 امتیاز
1 پاسخ 217 بازدید
...