فهرست سرفصل‌های Bash
خانه (Home) مقدمه (Intro) شروع به کار (Get Started) فرمان ها (Commands) فهرست فایل ها (List (ls)) تغییر پوشه (Change Dir (cd)) نمایش مسیر (Print Dir (pwd)) چاپ متن (Echo (echo)) ادغام فایل ها (Concatenate (cat)) کپی کردن (Copy (cp)) جابه جایی (Move (mv)) حذف (Remove (rm)) ساخت/به روزرسانی زمان (Timestamp (touch)) ساخت پوشه (Make Dir (mkdir)) راهنما (Manual (man)) نام مستعار (Alias) جستجوی متن (Search Text (grep)) اسکن الگو (Pattern Scan (awk)) ویرایشگر جریان (Stream Editor (sed)) برش بخش ها (Remove Section (cut)) مرتب سازی خطوط (Sort Lines (sort)) نمایش انتها (View End (tail)) نمایش ابتدا (View Start (head)) وضعیت فرایندها (Process Status (ps)) فهرست فرایندها (List Processes (top)) فضای دیسک (Disk Space (df)) مصرف پوشه ها (Directory Usage (du)) مصرف حافظه (Memory Usage (free)) پایان دادن (Terminate (kill)) زمان روشن بودن (Uptime) پینگ (Ping) انتقال URL (URL Transfer (curl)) دانلودکننده (Downloader (wget)) اتصال راه دور (Remote Connect (ssh)) کپی امن (Secure Copy (scp)) همگام سازی فایل ها (File Sync (rsync)) فشرده سازی (Compress (zip)) استخراج (Extract (unzip)) بایگانی TAR (TAR Archive) مالکیت (Ownership) تغییر مجوزها (Modify (chmod)) تغییر مالکیت (Ownership (chown)) تغییر گروه (Group (chgrp)) سینتکس (Syntax) اسکریپت (Script) متغیرها (Variables) انواع داده (Data Types) عملگرها (Operators) اگر…وگرنه (If...Else) حلقه ها (Loops) توابع (Functions) آرایه ها (Arrays) زمان بندی (Schedule (cron)) تمارین (Exercises) آزمون (Quiz) گواهینامه (Certificate)
نتیجه‌ای برای جستجو یافت نشد.
مستندات زبان Bash

Bash — اگر…وگرنه (If...Else)

آخرین بروزرسانی: 1404/08/17

اگر…وگرنه (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

مشاهده در ادیتور

گام های عملی

  1. یک متغیر بساز و مقدار بده.
  2. با if یک شرط ساده تست کن.
  3. برای حالت مخالف، else اضافه کن.
  4. یک مسیر سوم با elif بساز.

نکته: برای مقایسه عددی از عملگرهای بخش عملگرها استفاده کن. سپس برای تکرارها به حلقه ها برو. همچنین خود اگر…وگرنه را به عنوان مرجع نگه دار.

جمع بندی سریع

  • if شرط را می سنجد و اجرا می کند.
  • else مسیر جایگزین را اجرا می کند.
  • elif چند سناریو پشت سرهم می سازد.
  • هر if با fi تمام می شود.