وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

کد خروج Bash آخرین فرمان

0 7
زمان لازم برای مطالعه: 3 دقیقه






وقتی یک bash دستور اجرا می شود، صرف نظر از اجرای موفقیت آمیز یا ناموفق، کد خروج را پشت سر می گذارد. بررسی کد خروج می‌تواند بینش مفیدی در مورد رفتار آخرین اجرای فرمان ارائه دهد.

در این راهنما، روش بررسی را بررسی کنید bash کد خروج از آخرین دستور و برخی کاربردهای احتمالی آن.

کد خروج Bash

هر فرمان یونیکس/لینوکس که توسط اسکریپت پوسته یا کاربر اجرا می‌شود، وضعیت خروج را به جا می‌گذارد. این یک عدد صحیح است که بدون تغییر باقی می ماند مگر اینکه دستور بعدی اجرا شود. اگر کد خروج 0 باشد، دستور با موفقیت انجام شد. اگر کد خروج غیر صفر (1-255) باشد، نشان دهنده یک خطا است.

کاربردهای بالقوه زیادی از آن وجود دارد bash کد خروج بدیهی ترین مورد، البته، بررسی این است که آیا آخرین دستور به درستی اجرا شده است، به خصوص اگر دستور هیچ خروجی ایجاد نکند.

در شرایطی که bash، کد خروجی دستور قبلی با استفاده از متغیر پوسته “$?” قابل دسترسی است.

بررسی کد خروج Bash

راه اندازی a terminalو هر دستوری را اجرا کنید.

$ تاریخ

مقدار متغیر پوسته “$?” را بررسی کنید. برای کد خروج

$ echo دلار؟

کد خروج Bash آخرین فرمان

از آنجایی که دستور “تاریخ” با موفقیت اجرا شد، کد خروج 0 است. اگر خطایی وجود داشته باشد چه اتفاقی می افتد؟

بیایید دستوری را اجرا کنیم که وجود ندارد.

$ آ ب پ ت

کد خروج را بررسی کنید.

$ echo دلار؟

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

این یک مقدار غیر صفر است که نشان می دهد دستور قبلی به درستی اجرا نشده است.

پیشنهاد می‌کنیم بخوانید:  روش اسکرول بالا و پایین در Tmux

حالا به دستور زیر دقت کنید:

$ گربه sample.txt | grep “سکه”

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

هنگام کار با دستوری که یک یا چند لوله دارد، کد خروجی آخرین کد اجرا شده در لوله خواهد بود. در این مورد، دستور grep است.

چون دستور grep موفقیت آمیز بود، 0 خواهد بود.

$ echo دلار؟

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

در این مثال، اگر دستور grep ناموفق باشد، کد خروج غیر صفر خواهد بود.

$ گربه sample.txt | grep “آ ب پ ت”
$ echo دلار؟

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

گنجاندن کد خروج در اسکریپت ها

کد خروج همچنین می تواند برای اسکریپت استفاده شود. یک راه ساده برای استفاده از آن، اختصاص دادن آن به یک متغیر پوسته و کار با آن است. در اینجا یک نمونه اسکریپت پوسته است که از کد خروج به عنوان شرط استفاده می کند print خروجی خاص

$ #!/صندوقچه/bash

$ echo “سلام دنیا”

$ وضعیت=دلار؟

$ [ $status -eq 0 ] && echo “فرمان موفق شد” || echo “فرمان ناموفق”

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

هنگام اجرا، اسکریپت خروجی زیر را تولید می کند.

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

حالا، بیایید ببینیم وقتی یک دستور نامعتبر برای اجرا وجود دارد، چه اتفاقی می‌افتد.

$ #!/صندوقچه/bash

دستور تصادفی $
$ وضعیت=دلار؟

$ [ $status -eq 0 ] && echo “فرمان موفق شد” || echo “فرمان ناموفق”

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

هنگام اجرا، خروجی متفاوت خواهد بود.

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

توضیح مقدار کد خروج

وقتی کد خروجی غیر صفر باشد، مقدار آن از 1 تا 255 متغیر است، حالا این مقدار به چه معناست؟

در حالی که مقدار محدود است، توضیح هر مقدار مختص برنامه/اسکریپت است. به عنوان مثال، “ls” و “grep” توضیحات متفاوتی برای کد خطای 1 و 2 دارند.

$ مرد ls

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

$ مرد grep

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

تعریف وضعیت خروج در اسکریپت

هنگام نوشتن یک اسکریپت، می توانیم مقادیر کد خروجی سفارشی را تعریف کنیم. این یک روش مفید برای رفع اشکال آسان تر است. که در bash اسکریپت ها، این دستور «خروج» است که با مقدار کد خروجی همراه است.

$ خروج <ارزش>

طبق قرارداد، توصیه می شود کد خروجی 0 را برای اجرای موفقیت آمیز اختصاص دهید و از بقیه (1-255) برای خطاهای احتمالی استفاده کنید. با رسیدن به دستور خروج، اجرای اسکریپت پوسته خاتمه می یابد، بنابراین مراقب قرارگیری آن باشید.

پیشنهاد می‌کنیم بخوانید:  روش استفاده از xargs روی لینوکس

به اسکریپت پوسته زیر نگاهی بیندازید. در اینجا، اگر شرط برقرار باشد، اسکریپت با کد خروج 0 خاتمه می یابد. اگر شرط برقرار نباشد، کد خروج 1 خواهد بود.

$ #!/صندوقچه/bash

$ اگر [[ $(whoami) != root ]]; سپس

$ echo “کاربر اصلی نیست.”

$ خروج 1

$ فی

$ echo “کاربر ریشه”

$ خروج 0

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

نتیجه اجرای این اسکریپت را بدون مجوز sudo یا کاربر «ریشه» تأیید کنید.

دلار/نمونه.ش
$ echo دلار؟

کد خروج Bash آخرین فرمانکد خروج Bash آخرین فرمان

افکار نهایی

این راهنما نشان می دهد که کدهای خروج چیست و چگونه می توانید از آنها استفاده کنید. همچنین روش تخصیص کدهای خروج مناسب در a را نشان می دهد bash اسکریپت

علاقه مند به bash اسکریپت نویسی؟ یکی از ساده ترین راه ها برای شروع، نوشتن اسکریپت های شخصی است. این راهنمای ساده را بررسی کنید روی چگونه ساده بنویسیم bash اسکریپت

محاسبات مبارک!

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1402-12-31 02:04:05

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید