0Pricing
Linux Command Line Mastery · درس

الحلقات: `for` و`while` و`until`

أتمت المهام المتكررة بإتقان الأنواع المختلفة من الحلقات في برمجة shell النصية.

الحلقات: `for` و`while` و`until` درس مجاني في Linux Command Line Mastery على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Linux Command Line Mastery، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Linux Command Line Mastery 4 دروس في المجموع.

بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.

Why Use Loops?

Imagine you need to perform the same action many times, like saying 'Hello' to everyone in a list, or counting from 1 to 100. Doing this manually would be tedious and error-prone.

This is where loops come in! Loops allow your script to repeat a set of commands multiple times, saving you effort and making your scripts more efficient.

Looping Through Items with `for`

The for loop is perfect when you know exactly what items you want to iterate over. It goes through a list, processing each item one by one.

Its basic syntax looks like this:

  • for item in list; do
  • # commands to run for each item
  • done

The item variable will hold each value from the list in turn.

`for` Loop in Action

Let's see the for loop iterate through a list of names. Each name is assigned to the name variable, and then printed.

Try running this example:

#!/bin/bash

echo "--- Greeting Friends ---"
for name in Alice Bob Charlie;
do
  echo "Hello, $name!"
done
echo "--- All greeted! ---"

`for` Loop for Number Ranges

What if you need to loop a specific number of times, like counting from 1 to 5? You can generate sequences for the for loop:

  • Brace Expansion: {1..5} creates "1 2 3 4 5".
  • seq command: $(seq 1 5) also creates "1 2 3 4 5".

Both are handy for numerical iterations.

Counting with `for` Loop

Here's how you can use brace expansion to count up to a specific number. The loop variable i takes on each number in the sequence.

Try running this example:

#!/bin/bash

echo "Counting up!"
for i in {1..3};
do
  echo "Count: $i"
done
echo "Done counting."

Repeating with `while`

The while loop is used when you want to repeat commands as long as a certain condition remains true. It continuously checks the condition before each iteration.

Its basic structure is:

  • while condition; do
  • # commands to run
  • done

The loop stops as soon as the condition becomes false.

`while` Loop Counter

Let's use a while loop to count. We initialize a variable count, and the loop continues as long as count is less than 3.

Remember to update the variable inside the loop, or it might run forever (an 'infinite loop')!

#!/bin/bash

count=0
echo "Starting while loop..."
while [ $count -lt 3 ]; do
  echo "Current count: $count"
  count=$((count + 1))
done
echo "While loop finished."

Repeating `until` True

The until loop is similar to while, but with an inverse condition. It executes commands until a specified condition becomes true.

Its syntax is:

  • until condition; do
  • # commands to run
  • done

The loop continues as long as the condition is false.

`until` Loop in Action

Here's an until loop waiting for a variable num to reach 3. It will keep running as long as num is not greater than or equal to 3.

Try running this example:

#!/bin/bash

num=0
echo "Starting until loop..."
until [ $num -ge 3 ]; do
  echo "Current number: $num"
  num=$((num + 1))
done
echo "Until loop finished."

When to Use Which Loop?

Choosing the right loop makes your scripts clearer and more efficient:

  • for loop: Best for iterating over a known list of items (files, names, numbers in a range).
  • while loop: Ideal when you need to repeat commands as long as a condition holds true (e.g., reading lines from a file, waiting for user input, counting).
  • until loop: Useful when you want to repeat commands until a specific condition becomes true (e.g., waiting for a process to finish, retrying an operation).

Loop Challenge

Let's test your understanding of shell loops.

Loops: A Quick Recap

Well done! You've learned the fundamental looping constructs in shell scripting:

  • The for loop iterates over a fixed list of items or a range.
  • The while loop repeats commands as long as a condition is true.
  • The until loop repeats commands until a condition becomes true.

These loops are essential for automating repetitive tasks and making your scripts dynamic and powerful. Keep practicing!

الأسئلة الشائعة

هل درس «الحلقات: `for` و`while` و`until`» مجاني؟

نعم — نص درس «الحلقات: `for` و`while` و`until`» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Linux Command Line Mastery، انتقل إلى CoddyKit PRO. تتضمن دورة Linux Command Line Mastery 4 دروس في المجموع.

ماذا ستتعلم في «الحلقات: `for` و`while` و`until`»؟

أتمت المهام المتكررة بإتقان الأنواع المختلفة من الحلقات في برمجة shell النصية. تتمرن على Linux Command Line Mastery مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Linux Command Line Mastery؟

لا تُشترط خبرة سابقة. Linux Command Line Mastery على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.

كم من الوقت يستغرق درس «الحلقات: `for` و`while` و`until`»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Linux Command Line Mastery هذا؟

نعم. كل درس في Linux Command Line Mastery يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. المتغيرات والإدخال والإخراج
  2. العبارات الشرطية: `if` و`else` و`case`
  3. الحلقات: `for` و`while` و`until`
  4. الدوال والوسائط في Shell Scripts
← العودة إلى Linux Command Line Mastery