مقدمة إلى برمجة Bash النصية
تعلّموا أساسيات برمجة Bash النصية، بما في ذلك المتغيرات، والعبارات الشرطية، والحلقات، وتنفيذ الأوامر الأساسية.
مقدمة إلى برمجة Bash النصية درس مجاني في Linux Server Deployment & SSH Mastery على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Linux Server Deployment & SSH Mastery، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.
ما هي برمجة Bash النصية؟
مرحبًا بكم في عالم برمجة Bash النصية! إن Bash (Bourne Again SHell) هو مفسر سطر الأوامر الافتراضي في معظم أنظمة Linux.
إن البرنامج النصي Bash هو ببساطة ملف نصي يحتوي على سلسلة من الأوامر، مما يتيح لكم أتمتة المهام التي كنتم ستكتبونها يدويًا عادةً في الطرفية.
- وفّروا الوقت من خلال أتمتة المهام المتكررة.
- نفّذوا سلاسل معقدة من الأوامر بتشغيل واحد.
- أنشئوا أدوات مخصصة لإدارة الخوادم.
برنامجكم النصي الأول: Hello World
يبدأ كل برنامج نصي بسطر shebang (#!/bin/bash). ويخبر هذا السطر النظام بالمفسر الذي يجب استخدامه للبرنامج النصي.
بعد ذلك، تضيفون أوامركم. لننشئ برنامجًا نصيًا كلاسيكيًا يطبع 'Hello, World!'.
#!/bin/bash
# This is a comment: The script says hello.
echo "Hello, CoddyKit!"
جعل البرنامج النصي قابلاً للتنفيذ
بعد حفظ البرنامج النصي (مثلًا باسم hello.sh)، تحتاجون إلى منحه إذن التشغيل. ويتم ذلك باستخدام الأمر chmod الذي يغيّر أذونات الملف.
يمنح الخيار +x إذن التنفيذ. ومن دونه، لن يعرف النظام أن الملف برنامج ينبغي تشغيله.
#!/bin/bash
# In a real terminal, you would run:
# chmod +x hello.sh
# ./hello.sh
echo "Permissions matter!"
العمل باستخدام المتغيرات
تخزّن المتغيرات البيانات. في Bash، تعرّفون متغيرًا بإسناد قيمة إلى اسم، ولا حاجة إلى كلمة مفتاحية خاصة للتعريف.
- الإسناد:
NAME=value(من دون مسافات حول=) - الوصول:
$NAMEأو${NAME}
لنخزّن رسالة ونطبعها.
#!/bin/bash
MESSAGE="Welcome to scripting!"
echo $MESSAGE
دمج الأوامر والمتغيرات
يمكنكم استخدام المتغيرات مع أوامر Linux القياسية. فعلى سبيل المثال، يمكنكم تخزين اسم مجلد في متغير ثم استخدام ls لسرد محتوياته.
يجعل ذلك البرامج النصية مرنة، إذ يمكنكم تغيير قيمة المتغير دون تعديل الأمر نفسه.
#!/bin/bash
TARGET_DIR="/tmp"
echo "Listing contents of $TARGET_DIR:"
ls $TARGET_DIR
المنطق الشرطي: عبارة 'if'
غالبًا ما تحتاج البرامج النصية إلى اتخاذ قرارات. تتيح عبارة if للبرنامج النصي تنفيذ التعليمات البرمجية فقط إذا كان شرط معين صحيحًا.
تُحاط الشروط عادةً بأقواس مربعة [ ]. تذكروا وضع مسافات حول الأقواس والعوامل!
#!/bin/bash
NUMBER=10
if [ $NUMBER -gt 5 ]; then
echo "Number is greater than 5."
fi
إضافة 'else' و'elif'
لمعالجة الحالات التي يكون فيها شرط if غير صحيح، يمكنكم استخدام else. وإذا كانت لديكم شروط متعددة، فسيكون elif (أي else if) مفيدًا.
-eq: يساوي-ne: لا يساوي-lt: أصغر من-le: أصغر من أو يساوي-gt: أكبر من-ge: أكبر من أو يساوي
#!/bin/bash
GRADE=85
if [ $GRADE -ge 90 ]; then
echo "You got an A!"
elif [ $GRADE -ge 80 ]; then
echo "You got a B!"
else
echo "Keep studying!"
fi
التكرار باستخدام 'for'
تُعد الحلقات أساسية لتكرار المهام. تكرّر حلقة for على قائمة من العناصر أو نطاق من الأرقام.
يفيد ذلك في معالجة ملفات متعددة أو مدخلات المستخدمين أو تنفيذ إجراءات عددًا محددًا من المرات.
#!/bin/bash
for FRUIT in Apple Banana Orange;
do
echo "I like $FRUIT."
done
# Another common way: sequence
for i in {1..3};
do
echo "Count: $i"
done
التكرار باستخدام 'while'
تواصل حلقة while تنفيذ الأوامر ما دام شرط محدد يظل صحيحًا. وتكون مفيدة عندما لا تعرفون بالضبط عدد مرات التكرار المطلوبة.
احرصوا على تضمين طريقة تجعل الشرط يصبح غير صحيح في النهاية، وإلا فستنُشئون حلقة لا نهائية!
#!/bin/bash
COUNT=1
while [ $COUNT -le 3 ]; do
echo "The count is $COUNT."
COUNT=$((COUNT + 1))
done
اختبار برمجة Bash النصية
ما ناتج تنفيذ هذا البرنامج النصي البسيط في Bash؟
#!/bin/bash
NAME="Coddy"
AGE=5
if [ $AGE -gt 10 ]; then
echo "Hello, $NAME! You are a teen."
elif [ $AGE -eq 5 ]; then
echo "Hi, $NAME! You are young."
else
echo "Welcome, $NAME!"
fi
مراجعة: أساسيات برمجة Bash النصية
أحسنتم! لقد تعلمتم العناصر الأساسية لبرمجة Bash النصية:
- Shebang:
#!/bin/bashلتحديد المفسر. - قابل للتنفيذ: استخدموا
chmod +xلتشغيل البرامج النصية. - المتغيرات: خزّنوا البيانات باستخدام
NAME=valueوالوصول إليها باستخدام$NAME. - الشروط: اتخذوا القرارات باستخدام
ifوelifوelseمع عوامل اختبار مثل-gtو-eq. - الحلقات: كرروا المهام باستخدام
for(للتكرار على القوائم أو النطاقات) وwhile(للتكرار حتى يصبح الشرط غير صحيح).
تشكل هذه الأساسيات اللبنات الأساسية لأتمتة مهام الخادم المعقدة!
الأسئلة الشائعة
هل درس «مقدمة إلى برمجة Bash النصية» مجاني؟
نعم — نص درس «مقدمة إلى برمجة Bash النصية» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Linux Server Deployment & SSH Mastery، انتقل إلى CoddyKit PRO. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.
ماذا ستتعلم في «مقدمة إلى برمجة Bash النصية»؟
تعلّموا أساسيات برمجة Bash النصية، بما في ذلك المتغيرات، والعبارات الشرطية، والحلقات، وتنفيذ الأوامر الأساسية. تتمرن على Linux Server Deployment & SSH Mastery مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Linux Server Deployment & SSH Mastery؟
لا تُشترط خبرة سابقة. Linux Server Deployment & SSH Mastery على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «مقدمة إلى برمجة Bash النصية»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Linux Server Deployment & SSH Mastery هذا؟
نعم. كل درس في Linux Server Deployment & SSH Mastery يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- مقدمة إلى برمجة Bash النصية
- أتمتة مهام الخادم
- معالجة الأخطاء وتسجيلها في النصوص البرمجية
- الدوال والوسائط والبرامج النصية القابلة لإعادة الاستخدام