اگر…وگرنه (If...Else)
ساختار شرطی «اگر…وگرنه» مغز تصمیم گیری اسکریپت است. شرط یعنی پرسش بله یا خیر. سپس کد مناسب اجرا می شود. مثل بازی که اگر امتیاز بالا بود، مرحله بعد باز می شود.
ساختار if در بش
با if شرط را می سنجی. اگر درست بود، بلاک اجرا می شود. شرط داخل براکت [ ] می آید و با fi پایان می یابد.
# if پایه
num=15
if [ $num -gt 10 ]; then
echo "عدد بزرگ تر از 10 است"
fi
اگر…وگرنه (if...else)
با else مسیر دوم را مشخص می کنی. اگر شرط درست نبود، بلاک else اجرا می شود.
# if...else نمونه
num=8
if [ $num -gt 10 ]; then
echo "عدد بزرگ تر از 10 است"
else
echo "عدد 10 یا کمتر است"
fi
السیف (elif) برای چند شرط
با elif چند سناریو می سازی. اگر اولی غلط شد، بعدی بررسی می شود. در پایان باز هم fi می آید.
# if...elif...else نمونه
num=10
if [ $num -gt 10 ]; then
echo "بزرگ تر از 10"
elif [ $num -eq 10 ]; then
echo "دقیقاً 10"
else
echo "کمتر از 10"
fi
تودرتو نوشتن شرط ها
می توانی if را داخل if بنویسی. این کار منطق پیچیده می سازد. هر if باید با fi خودش بسته شود.
# if تودرتو
num=5
if [ $num -gt 0 ]; then
if [ $num -lt 10 ]; then
echo "عدد بین 1 تا 9 است"
fi
fi
گام های عملی
- یک متغیر بساز و مقدار بده.
- با if یک شرط ساده تست کن.
- برای حالت مخالف، else اضافه کن.
- یک مسیر سوم با elif بساز.
نکته: برای مقایسه عددی از عملگرهای بخش عملگرها استفاده کن. سپس برای تکرارها به حلقه ها برو. همچنین خود اگر…وگرنه را به عنوان مرجع نگه دار.
جمع بندی سریع
- if شرط را می سنجد و اجرا می کند.
- else مسیر جایگزین را اجرا می کند.
- elif چند سناریو پشت سرهم می سازد.
- هر if با fi تمام می شود.