CodeShot
Shell Scripting1 دقیقه مطالعه

Shell Scripting چیست؟

نوشتن مجموعه‌ای از دستورات Shell در یک فایل قابل‌اجرا برای خودکارسازی کارهای تکراری سرور — از Backup گرفتن تا Deploy کردن.

چرا مهم است؟

خیلی از کارهای زیرساختی (Backup، چرخش لاگ، Health Check دوره‌ای) نیازی به یک برنامه کامل ندارند؛ یک اسکریپت Shell کوتاه و قابل‌اعتماد سریع‌تر نوشته و نگهداری می‌شود.

تعریف

Shell Script فایلی با پسوند .sh است که مجموعه‌ای از دستورات Bash/Shell را به‌ترتیب اجرا می‌کند؛ با chmod +x script.sh قابل‌اجرا و مستقیم از خط فرمان یا Cron قابل فراخوانی است.

مثال: اسکریپت Backup ساده

#!/bin/bash
set -euo pipefail

BACKUP_DIR="/backups"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)

pg_dump mydb > "$BACKUP_DIR/mydb_$TIMESTAMP.sql"
find "$BACKUP_DIR" -name "*.sql" -mtime +7 -delete
echo "بکاپ گرفته شد: mydb_$TIMESTAMP.sql"

نکات مهم

  • set -euo pipefail در ابتدای هر اسکریپت جدی بگذارید: اسکریپت با اولین خطا متوقف می‌شود، به‌جای ادامه‌دادن با حالت نامشخص.
  • خروجی و خطاها را Log کنید (>> script.log 2>&1) تا بعداً قابل بررسی باشد.

اشتباه رایج

❌ نوشتن اسکریپت بدون بررسی مقدار بازگشتی دستورات حساس (مثل حذف فایل یا Migration دیتابیس) — بدون set -e، یک دستور شکست‌خورده بی‌صدا رد می‌شود و بقیه اسکریپت با فرض موفقیت آن ادامه پیدا می‌کند.

منبع و مطالعه بیشتر

خلاصه

Shell Script یعنی مجموعه دستورات Bash در یک فایل اجرایی برای خودکارسازی کارهای سرور. همیشه set -euo pipefail بگذارید و اسکریپت را با ShellCheck بررسی کنید. مرجع کامل: ابزار ShellCheck و devhints.io.

این مطلب مفید بود؟
نشان کردن
مشاهده در Concept Hub ←