فهرست سرفصل‌های 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 — عملگرها (Operators)

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

عملگرها (Operators)

عملگرهای بش یعنی نشانه هایی برای مقایسه، حساب، منطق و بررسی فایل. با آن ها اسکریپت هوشمند می نویسی؛ مثل قوانین بازی که نتیجه را تعیین می کنند.

مقایسه عددی (Comparison)

برای اعداد از -eq، -ne، -lt، -le، -gt و -ge استفاده کن. این ها در شرط ها نتیجه درست یا نادرست می دهند.

a=5
b=7
if [ $a -lt $b ]; then
  echo "a کوچکتر است"
fi
if [ $b -ge 7 ]; then
  echo "b حداقل هفت است"
fi

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

مقایسه رشته ای (String)

برای متن از = و != استفاده کن. همچنین < و > بر اساس ترتیب ASCII مقایسه می کنند.

name="amir"
if [ "$name" = "amir" ]; then
  echo "سلام امیر"
fi
if [ "$name" != "reza" ]; then
  echo "نام، رضا نیست"
fi

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

عملگرهای حسابی (Arithmetic)

برای جمع، تفریق، ضرب، تقسیم و باقیمانده از +، -، *، / و % استفاده کن.

x=9
y=4
sum=$((x + y))
mod=$((x % y))
echo $sum
echo $mod

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

نکته: توان را مستقیم نداریم. برای توان از bc یا awk کمک بگیر.

منطقی ها (Logical)

برای ترکیب شرط ها از && ، || و ! استفاده کن. این ها مثل و، یا، نقیض هستند.

age=16
score=90
if [ $age -ge 15 ] && [ $score -gt 80 ]; then
  echo "شرایط عالی است"
fi
if ! [ $score -lt 50 ]; then
  echo "نمره قابل قبول است"
fi

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

آزمون فایل (File Test)

برای فایل ها از -e، -d، -f و -s استفاده کن. وجود، پوشه بودن، معمولی بودن و خالی نبودن را می سنجند.

path="./notes.txt"
if [ -e "$path" ]; then
  echo "فایل وجود دارد"
fi
if [ -f "$path" ] && [ -s "$path" ]; then
  echo "فایل معمولی و غیرخالی است"
fi

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

گام های عملی سریع

  1. دو عدد تعریف کن و با -gt مقایسه کن.
  2. دو رشته بساز و نابرابری را چک کن.
  3. یک شرط && با دو مقایسه بنویس.
  4. وجود یک فایل را با -e بررسی کن.

برای پیش نیازها به انواع داده سر بزن. همچنین شرط ها در بش ادامه طبیعی عملگرها است.

جمع بندی سریع

  • مقایسه عددی با -eq و دوستان.
  • رشته ها با = و != سنجیده می شوند.
  • حساب ساده با $((…)) انجام می شود.
  • منطقی ها شرط ها را ترکیب می کنند.
  • آزمون فایل وضعیت فایل را می گوید.