+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 پاسخ 657 بازدید
+1 امتیاز
2 پاسخ 475 بازدید
0 امتیاز
1 پاسخ 260 بازدید
+1 امتیاز
1 پاسخ 647 بازدید
0 امتیاز
1 پاسخ 517 بازدید
0 امتیاز
1 پاسخ 355 بازدید
0 امتیاز
1 پاسخ 277 بازدید
0 امتیاز
1 پاسخ 216 بازدید
...