انتقل إلى المحتوى الرئيسي

الفصل 6.1 - مقدمة في البرمجة النصية للشل

أهداف التعلم​

في نهاية هذا الفصل، ستكون قادرًا على:

  • فهم ما هو السكربت shell
  • إنشاء أول سكربت Bash لك
  • فهم الشيبانغ
  • جعل السكربت قابلاً للتنفيذ
  • استخدام المتغيرات الأساسية

ما هو السكربت shell؟​

الـ سكربت shell هو ملف يحتوي على سلسلة من أوامر shell التي تُنفذ بشكل متسلسل. إنه وسيلة قوية لأتمتة المهام.

المزايا:

  • أتمتة المهام المتكررة
  • دمج الأوامر المعقدة
  • إعادة الاستخدام
  • الجدولة باستخدام cron

السكربت الأول​

إنشاء سكربت​

#!/bin/bash
# سكربتي الأول
echo "مرحبًا لينكس!"
echo "التاريخ: $(date)"
echo "المستخدم: $(whoami)"

الخطوات:

  1. إنشاء الملف: nano mon_script.sh
  2. إضافة المحتوى أعلاه
  3. جعله قابلاً للتنفيذ: chmod +x mon_script.sh
  4. التنفيذ: ./mon_script.sh

شيبانغ​

السطر الأول #!/bin/bash هو الـ شيبانغ:

  • يحدد أي مفسر يجب استخدامه
  • ضروري للتنفيذ المباشر
  • بدائل: #!/bin/sh, #!/usr/bin/env bash

المتغيرات​

التصريح​

#!/bin/bash
# متغيرات بسيطة
NOM="Linux"
VERSION=6.1
ACTIF=true

# الاستخدام
echo "الاسم: $NOM"
echo "الإصدار: $VERSION"
echo "نشط: $ACTIF"

القواعد:

  • لا توجد مسافات حول =
  • علامات الاقتباس للسلاسل مع المسافات
  • $ لاستخدام المتغير

المتغيرات البيئية​

#!/bin/bash
# متغيرات النظام
echo "Home: $HOME"
echo "User: $USER"
echo "Path: $PATH"
echo "PWD: $PWD"

المتغيرات الخاصة​

#!/bin/bash
echo "اسم السكربت: $0"
echo "الحجة الأولى: $1"
echo "الحجة الثانية: $2"
echo "عدد الحجج: $#"
echo "جميع الحجج: $@"
echo "رمز العودة: $?"

قراءة المدخلات​

read​

#!/bin/bash
# قراءة مدخل
echo "أدخل اسمك:"
read NOM
echo "مرحبًا $NOM!"

# مع موجه مدمج
read -p "أدخل عمرك: " AGE
echo "عمرك $AGE سنة"

# قراءة صامتة (كلمة مرور)
read -s -p "كلمة المرور: " PASS
echo

التعليقات​

#!/bin/bash
# تعليق على سطر واحد

# تعليق
# على عدة أسطر

# تعليق في نهاية السطر
COMMANDE # توضيح

مثال كامل​

#!/bin/bash
# سكربت مثال
# المؤلف: اسمك
# التاريخ: $(date +%Y-%m-%d)

# المتغيرات
NOM_SCRIPT="mon_script.sh"
VERSION="1.0"

# الوظيفة الرئيسية
main() {
echo "=== $NOM_SCRIPT v$VERSION ==="
echo "التاريخ: $(date)"
echo "المستخدم: $USER"
echo "الدليل: $PWD"
echo "الحجج: $#"

if [ $# -gt 0 ]; then
echo "الحجة الأولى: $1"
fi
}

# التنفيذ
main "$@"

التنفيذ​

الطرق​

# 1. تنفيذ مباشر (يتطلب شيبانغ و chmod +x)
./mon_script.sh

# 2. باستخدام bash صريح
bash mon_script.sh

# 3. باستخدام sh
sh mon_script.sh

# 4. المصدر (ينفذ في الشل الحالي)
source mon_script.sh
. mon_script.sh # اختصار

أفضل الممارسات​

الهيكل​

#!/bin/bash
# 1. شيبانغ
# 2. تعليقات الرأس
# 3. المتغيرات العامة
# 4. الوظائف
# 5. الكود الرئيسي

الخيارات المفيدة​

#!/bin/bash
set -e # التوقف عند الخطأ
set -u # خطأ إذا كان المتغير غير معرف
set -o pipefail # خطأ في خط الأنابيب

# أو الجمع
set -euo pipefail

ملخص​

في هذا الفصل، تعلمت:

سكربت shell: ملف أوامر قابلة للتنفيذ
شيبانغ: #!/bin/bash لتحديد المفسر
المتغيرات: التصريح والاستخدام مع $
القراءة: read لمدخلات المستخدم
التنفيذ: ./script.sh, bash script.sh, source script.sh
أفضل الممارسات: الهيكل، set -e، التعليقات


الخطوات التالية​

الفصل 6.2: المتغيرات والمعلمات
الفصل 6.3: هياكل التحكم


تم إنشاء الفصل في: ديسمبر 2024