سلام

نمی دانم این عنوان مناسب بود یا نه اما می خواهم هر چیزی که تازه یاد گرفتم و به نظرم جالب آمد در اینجا بنویسم.

اما امروز:

errorlevel چیست؟
برنامه ها هنگام خروج می توانند یک کد خروجی به سیستم عامل تحویل دهند. اگر این کد صفر باشد یعنی خروج عادی اما اگر عددی دیگر باشد (صفر تا ۲۵۵) یعنی خطا.

در داس خیلی وقت پیش این نکته را می دانستم و با آن کار میکردم اما در لینوکس (bash) نمی دانستم.

تا اینکه امروز دستور for را یکبار دیگر نگاه می کردم و این را یاد گرفتم. بهتر است با یک مثال پیش برویم:

اگر شما با دستور ls فایلی را بخواهید پیدا کنید و آن فایل وجود نداشته باشد عدد یک به عنوان نتیجه بر گردانیده می شود:


root@srv1:/# ls a
ls: a: No such file or directory
root@srv1:/# echo $?
1
root@srv1:/#


توجه کنید دستور بعدی که اجرا شود errorlevel از بین می رود.

تذکر: نمی دانم واژه درست در لینوکس errorlevel است یا نه من واژه ویندوزی (داس) را نوشتم. exit status در متن خودش نوشته است.

در ویندوز دستور از راهنمای ویندوز if را ببینید مثال:

if %errorlevel% geq 1 echo error