تراكيب الحلقات (for، while)
أتمتوا المهام المتكررة باستخدام حلقتَي 'for' و'while'، مع التكرار على القوائم أو الملفات أو الشروط.
تراكيب الحلقات (for، while) درس مجاني في DevOps Bootcamp على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في DevOps Bootcamp، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
أتمتة المهام باستخدام الحلقات
مرحبًا بكم! سنتعمق في هذا الدرس في عالم الحلقات ضمن برمجة Bash. الحلقات أدوات قوية تتيح لنصوصكم البرمجية تكرار مجموعة من الأوامر عدة مرات.
وهذا ضروري لأتمتة المهام المتكررة، ومعالجة قوائم البيانات، أو تنفيذ الإجراءات حتى تحقق شرطًا معينًا. وسنستكشف نوعين رئيسيين: حلقات for وحلقات while.
حلقة 'for': قوائم العناصر
تُعد حلقة for مثالية للتكرار على قائمة ثابتة من العناصر. ويمكن أن تكون هذه القائمة سلسلة من الكلمات أو أسماء الملفات أو الأرقام أو أي عناصر أخرى يمكنكم تحديدها.
صيغتها الأساسية هي:
forvariableinitem1 item2 ...; do- commands to repeat
done
سيُسنَد كل عنصر في القائمة إلى variable، وستُنفَّذ الأوامر لكل عنصر.
مثال: التكرار عبر قائمة
لنرَ حلقة for أثناء العمل من خلال التكرار عبر قائمة من الفواكه. جرّب تشغيل هذا المثال لترى كيفية معالجة كل فاكهة:
#!/bin/bash
echo "My favorite fruits:"
for fruit in Apple Banana Orange;
do
echo "$fruit is delicious!"
doneحلقة 'for': تسلسلات الأرقام
يمكن لحلقة for أيضًا إنشاء تسلسلات من الأرقام والتكرار عبرها بسهولة. وهذا مفيد جدًا للمهام التي تتطلب العدّ أو معالجة العناصر حسب الفهرس.
يمكنك استخدام توسعة الأقواس {start..end} لإنشاء تسلسل من الأرقام:
for i in {1..5}; do ... done
وبديلًا عن ذلك، يمكن للأمر seq إنشاء تسلسلات مع خيارات إضافية، مثل الخطوات:
for i in $(seq 1 2 10); do ... done
مثال: العد باستخدام 'for'
إليك كيفية استخدام توسعة الأقواس للعدّ من 1 إلى 3. وهذا نمط شائع للحلقات الرقمية البسيطة.
#!/bin/bash
echo "Counting up:"
for i in {1..3};
do
echo "Number: $i"
doneحلقة 'while': التكرار الشرطي
تنفّذ حلقة while مجموعة من الأوامر بشكل متكرر ما دام شرط محدد يظل صحيحًا. وهي مناسبة عندما لا تعرف مسبقًا عدد مرات التكرار المطلوبة.
بنيتها الأساسية هي:
while[ condition ]; do- commands to repeat
done
يُقيَّم الشرط قبل كل تكرار. فإذا كان صحيحًا، تُنفَّذ الأوامر؛ وإذا كان خاطئًا، تنتهي الحلقة.
مثال: عدّاد 'while' بسيط
يوضح هذا المثال حلقة while تعدّ من 1 إلى 3. لاحظ كيف تتم زيادة قيمة المتغير count داخل الحلقة لجعل الشرط خاطئًا في النهاية.
#!/bin/bash
count=1
echo "Counting with while loop:"
while [ $count -le 3 ];
do
echo "Current count: $count"
count=$((count + 1))
doneحلقة 'while': قراءة الملفات سطرًا سطرًا
من الاستخدامات الشائعة والقوية جدًا لحلقة while قراءة ملف ومعالجته سطرًا سطرًا. وهذا ضروري لتحليل ملفات السجل وملفات الإعدادات أو أي بيانات نصية.
غالبًا ما يكون النمط كما يلي:
while IFS= read -r line; do- commands to process $line
done < filename.txt
تُعد IFS= read -r طريقة موثوقة لقراءة الأسطر، إذ تمنع المشكلات المتعلقة بالمسافات والشرطات المائلة العكسية.
مثال: معالجة ملف
لنُنشئ ملفًا مؤقتًا ونستخدم حلقة while لقراءة محتواه وعرضه سطرًا سطرًا. يوضح هذا تطبيقًا عمليًا لمعالجة الملفات.
#!/bin/bash
# Create a temporary file for demonstration
echo "First line of data" > temp_data.txt
echo "Second line of data" >> temp_data.txt
echo "Third line of data" >> temp_data.txt
echo "\nReading from temp_data.txt:"
while IFS= read -r line;
do
echo "Processed: $line"
done < temp_data.txt
# Clean up the temporary file
rm temp_data.txtاختيار نوع الحلقة
لقد تعلمت عن حلقتَي for وwhile. ولكل منهما نقاط قوة تعتمد على المهمة المطلوبة.
تأمل السيناريو التالي: تحتاج إلى معالجة كل اسم ملف في مجلد محدد.
مراجعة: الحلقات لأتمتة المهام
لقد استكشفت بنجاح تراكيب الحلقات في Bash!
- حلقة
forمناسبة للتكرار عبر قائمة معروفة ومحدودة من العناصر أو عبر تسلسل من الأرقام. - حلقة
whileهي الأفضل عندما تحتاج إلى تكرار الأوامر ما دام شرط معين صحيحًا، وغالبًا ما تُستخدم للعدّ أو لقراءة الملفات سطرًا سطرًا.
يُعد إتقان هذه الحلقات أمرًا أساسيًا لكتابة نصوص Bash قوية ومؤتمتة. واصل التدريب لتطوير مهاراتك في كتابة النصوص البرمجية!
الأسئلة الشائعة
هل درس «تراكيب الحلقات (for، while)» مجاني؟
نعم — نص درس «تراكيب الحلقات (for، while)» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة DevOps Bootcamp، انتقل إلى CoddyKit PRO. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
ماذا ستتعلم في «تراكيب الحلقات (for، while)»؟
أتمتوا المهام المتكررة باستخدام حلقتَي 'for' و'while'، مع التكرار على القوائم أو الملفات أو الشروط. تتمرن على DevOps Bootcamp مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ DevOps Bootcamp؟
لا تُشترط خبرة سابقة. DevOps Bootcamp على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «تراكيب الحلقات (for، while)»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس DevOps Bootcamp هذا؟
نعم. كل درس في DevOps Bootcamp يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تراكيب الحلقات (for، while)
- الدوال في Bash Scripts
- وسائط واختيارات Script ($@، $ of، getopts)
- عبارة case ومطابقة الأنماط