ایستگاه های کاری آنلاین OnWorks Linux و Windows

لوگو

میزبانی آنلاین رایگان برای ایستگاه های کاری

<قبلی | فهرست | بعدی>

وضعیت خروج

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



[me@linuxbox ~]$ ls -d /usr/bin

/ usr / bin

[me@linuxbox ~]$ اکو $؟

0

[me@linuxbox ~]$ ls -d /bin/usr

ls: نمی تواند به /bin/usr دسترسی پیدا کند: چنین فایل یا دایرکتوری [me@linuxbox ~]$ وجود ندارد اکو $؟

2

[me@linuxbox ~]$ ls -d /usr/bin

/ usr / bin

[me@linuxbox ~]$ اکو $؟

0

[me@linuxbox ~]$ ls -d /bin/usr

ls: نمی تواند به /bin/usr دسترسی پیدا کند: چنین فایل یا دایرکتوری [me@linuxbox ~]$ وجود ندارد اکو $؟

2

وضعیت خروج


در این مثال، ما را اجرا می کنیم ls دوبار فرمان دهید اولین بار، دستور با موفقیت اجرا می شود. اگر مقدار پارامتر را نمایش دهیم $?، می بینیم که صفر است. را اجرا می کنیم ls برای بار دوم دستور دهید (مشخص کردن دایرکتوری ناموجود)، خطا ایجاد کنید و پارامتر را بررسی کنید. $? از نو. این بار حاوی 2 است که نشان می دهد دستور با خطا مواجه شده است. برخی از دستورات از مقادیر مختلف وضعیت خروج برای ارائه تشخیص خطاها استفاده می کنند، در حالی که بسیاری از دستورات به سادگی با مقدار یک خارج می شوند. صفحات Man اغلب شامل بخشی با عنوان "وضعیت خروج" هستند که کدهایی را که استفاده می شود را توضیح می دهد. با این حال، صفر همیشه نشان دهنده موفقیت است.

پوسته دو دستور داخلی بسیار ساده را ارائه می دهد که هیچ کاری جز پایان دادن با وضعیت خروج صفر یا یک انجام نمی دهند. در درست فرمان همیشه با موفقیت اجرا می شود غلط دستور همیشه ناموفق اجرا می شود:


[me@linuxbox ~]$ درست [me@linuxbox ~]$ اکو $؟ 0

[me@linuxbox ~]$ غلط [me@linuxbox ~]$ اکو $؟ 1

[me@linuxbox ~]$ درست [me@linuxbox ~]$ اکو $؟ 0

[me@linuxbox ~]$ غلط [me@linuxbox ~]$ اکو $؟ 1


ما می توانیم از این دستورات استفاده کنیم تا ببینیم چگونه if بیانیه کار می کند چه if بیانیه ای که واقعاً انجام می دهد ارزیابی موفقیت یا شکست دستورات است:



[me@linuxbox ~]$ اگر درست باشد؛ سپس "درست است" را تکرار کنید. فی

درسته.

[me@linuxbox ~]$ اگر نادرست است؛ سپس "درست است" را تکرار کنید. فی

[me@linuxbox ~]$

[me@linuxbox ~]$ اگر درست باشد؛ سپس "درست است" را تکرار کنید. فی

درسته.

[me@linuxbox ~]$ اگر نادرست است؛ سپس "درست است" را تکرار کنید. فی

[me@linuxbox ~]$


دستور پژواک "درست است." زمانی که دستور زیر اجرا می شود if با موفقیت اجرا می شود و با دستور زیر اجرا نمی شود if با موفقیت اجرا نمی شود اگر لیستی از دستورات دنبال شود if، آخرین دستور در لیست ارزیابی می شود:


[me@linuxbox ~]$ اگر نادرست است. درست است، واقعی؛ سپس "درست است" را تکرار کنید. fi این درست است.

[me@linuxbox ~]$ اگر درست باشد. نادرست سپس "درست است" را تکرار کنید. fi [me@linuxbox ~]$

[me@linuxbox ~]$ اگر نادرست است. درست است، واقعی؛ سپس "درست است" را تکرار کنید. fi این درست است.

[me@linuxbox ~]$ اگر درست باشد. نادرست سپس "درست است" را تکرار کنید. fi [me@linuxbox ~]$


برترین سیستم عامل Cloud Computing در OnWorks: