Bash control structures

From binaryoption
Jump to navigation Jump to search
Баннер1
  1. هياكل التحكم في Bash

مقدمة

Bash (Bourne Again Shell) هو مترجم أوامر وقوة محرك برمجة نصية، وهو الافتراضي لمعظم توزيعات Linux و macOS. فهم هياكل التحكم في Bash أمر بالغ الأهمية لكتابة نصوص برمجية فعالة وديناميكية. تسمح لك هذه الهياكل باتخاذ القرارات وتنفيذ أجزاء من التعليمات البرمجية بشكل متكرر بناءً على شروط معينة. هذه المقالة موجهة للمبتدئين وتهدف إلى تقديم شرح شامل لهياكل التحكم الأساسية في Bash.

هياكل التحكم الأساسية

هناك عدة أنواع رئيسية لهياكل التحكم في Bash:

  • عبارات if/then/else : تستخدم لتنفيذ كتل مختلفة من التعليمات البرمجية بناءً على صحة شرط.
  • حلقات for : تستخدم لتكرار مجموعة من الأوامر لعدد محدد من المرات أو لكل عنصر في قائمة.
  • حلقات while : تستخدم لتكرار مجموعة من الأوامر طالما أن شرطًا معينًا صحيح.
  • حلقات until : تستخدم لتكرار مجموعة من الأوامر حتى يصبح شرط معين صحيحًا.
  • عبارة case : تستخدم لاختيار كتلة واحدة من التعليمات البرمجية للتنفيذ من بين عدة خيارات محتملة.

عبارات if/then/else

تسمح عبارة `if` بتنفيذ التعليمات البرمجية بشكل شرطي. الصيغة العامة هي:

Admin (talk)bash if [ condition ]; then

 commands

elif [ another_condition ]; then

 other_commands

else

 default_commands

fi Admin (talk)

  • condition : تعبير يتم تقييمه كصحيح أو خاطئ. غالبًا ما تستخدم اختبار الملفات (مثل `-f` للتحقق من وجود ملف، `-d` للتحقق من وجود دليل) أو مقارنات الأرقام أو السلاسل النصية. انظر اختبار الملفات و المقارنات للحصول على تفاصيل أكثر.
  • commands : الأوامر التي يتم تنفيذها إذا كان الشرط صحيحًا.
  • elif : اختصار لـ "else if"، يسمح بفحص شروط متعددة.
  • else : كتلة التعليمات البرمجية التي يتم تنفيذها إذا لم يكن أي من الشروط السابقة صحيحًا.
  • fi : ينهي عبارة `if`.

مثال:

Admin (talk)bash

  1. !/bin/bash

file="myfile.txt"

if [ -f "$file" ]; then

 echo "الملف '$file' موجود."

else

 echo "الملف '$file' غير موجود."

fi Admin (talk)

حلقات for

تستخدم حلقات `for` لتكرار مجموعة من الأوامر لعدد محدد من المرات أو لكل عنصر في قائمة. هناك طريقتان رئيسيتان لاستخدام حلقات `for`:

  • تكرار عبر قائمة :

Admin (talk)bash for variable in list; do

 commands

done Admin (talk)

  • تكرار باستخدام تسلسل رقمي :

Admin (talk)bash for ((i=1; i<=10; i++)); do

 commands

done Admin (talk)

مثال:

Admin (talk)bash

  1. !/bin/bash

for fruit in apple banana cherry; do

 echo "أنا أحب $fruit"

done Admin (talk)

حلقات while

تنفذ حلقة `while` مجموعة من الأوامر طالما أن شرطًا معينًا صحيح. الصيغة العامة هي:

Admin (talk)bash while [ condition ]; do

 commands

done Admin (talk)

  • condition : تعبير يتم تقييمه كصحيح أو خاطئ.
  • commands : الأوامر التي يتم تنفيذها طالما أن الشرط صحيح.

مثال:

Admin (talk)bash

  1. !/bin/bash

count=1

while [ $count -le 5 ]; do

 echo "العد: $count"
 count=$((count + 1))

done Admin (talk)

حلقات until

تنفذ حلقة `until` مجموعة من الأوامر حتى يصبح شرطًا معينًا صحيحًا. الصيغة العامة هي:

Admin (talk)bash until [ condition ]; do

 commands

done Admin (talk)

  • condition : تعبير يتم تقييمه كصحيح أو خاطئ.
  • commands : الأوامر التي يتم تنفيذها حتى يصبح الشرط صحيحًا.

مثال:

Admin (talk)bash

  1. !/bin/bash

count=1

until [ $count -gt 5 ]; do

 echo "العد: $count"
 count=$((count + 1))

done Admin (talk)

عبارة case

تسمح عبارة `case` باختيار كتلة واحدة من التعليمات البرمجية للتنفيذ من بين عدة خيارات محتملة. الصيغة العامة هي:

Admin (talk)bash case variable in

 pattern1)
   commands1
   ;;
 pattern2)
   commands2
   ;;
 *)
   default_commands
   ;;

esac Admin (talk)

  • variable : المتغير الذي يتم مقارنته بالأنماط.
  • pattern1, pattern2... : الأنماط التي يتم مطابقتها مع قيمة المتغير.
  • commands1, commands2... : الأوامر التي يتم تنفيذها إذا تطابق النمط.
  • ;; : يفصل بين الحالات المختلفة.
  • *) : الحالة الافتراضية، يتم تنفيذها إذا لم يتطابق أي من الأنماط الأخرى.
  • esac : ينهي عبارة `case`.

مثال:

Admin (talk)bash

  1. !/bin/bash

echo "أدخل رقمًا بين 1 و 3:" read num

case $num in

 1)
   echo "لقد اخترت الرقم واحد."
   ;;
 2)
   echo "لقد اخترت الرقم اثنين."
   ;;
 3)
   echo "لقد اخترت الرقم ثلاثة."
   ;;
 *)
   echo "اختيار غير صالح."
   ;;

esac Admin (talk)

استراتيجيات متقدمة

  • استخدام `break` و `continue` : يمكن استخدام `break` للخروج من الحلقة، بينما يمكن استخدام `continue` لتخطي التكرار الحالي والانتقال إلى التكرار التالي. انظر break و continue.
  • الدوال (Functions) : يمكن تعريف الدوال لتجميع مجموعة من الأوامر واستخدامها بشكل متكرر. انظر الدوال في Bash.
  • معالجة الأخطاء : استخدام `set -e` للخروج فورًا إذا فشل أي أمر. انظر معالجة الأخطاء.
  • التعامل مع الإدخال/الإخراج : استخدام إعادة التوجيه (redirection) والأنابيب (pipes) لمعالجة البيانات. انظر إعادة التوجيه والأنابيب.

روابط ذات صلة (استراتيجيات، تحليل فني، تحليل حجم التداول)

روابط ذات صلة (مفاهيم Bash)


ابدأ التداول الآن

سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)

انضم إلى مجتمعنا

اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين

Баннер