نسخة تجريبية مجانية للوكيل
البرمجة النصية باش شل

الفصل الأول: مقدمة إلى برمجة Bash Shell

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

الفصل الثاني: فهم باش شل

2.1: نظرة عامة

يعد Bash، وهو إصدار محسّن ومتوافق مع الإصدارات السابقة من Bourne Shell، أساسيًا لأنظمة Unix وLinux. على الرغم من أنه يستخدم بشكل أساسي على أنظمة Unix/Linux، إلا أنه مضمن أيضًا في macOS ويمكن الوصول إليه على Windows باستخدام أدوات مثل نظام Windows الفرعي لنظام Linux (WSL).

2.2: فوائد تعلم باش

  • شعبية: Bash هي لغة البرمجة النصية الأكثر انتشارًا لأنظمة Unix/Linux.
  • طول العمر: تم طرحه في عام 1989، ولا يزال Bash وثيق الصلة بالموضوع وقويًا حتى يومنا هذا.
  • براعه: يمكن تشغيل البرامج النصية المكتوبة بلغة Bash على أنظمة تشغيل متعددة.
  • أتمتة: يمكن لبرامج Bash النصية أتمتة المهام المتكررة، مما يزيد الإنتاجية.
  • اندماج: يستطيع Bash التفاعل مع الأدوات واللغات الأخرى والتحكم فيها.

2.3: حدود باش

على الرغم من قوته، إلا أن باش ليس مناسبًا لجميع المهام. بالنسبة للبرمجة الموجهة للكائنات، والبرمجة النصية المعقدة، وإدارة النظام المتقدمة، قد تكون اللغات أو الأدوات الأخرى أكثر ملاءمة.

الفصل الثالث: المتطلبات الأساسية

3.1: نظام التشغيل

على الرغم من أنه أصلي لنظام Unix/Linux، إلا أنه يمكن استخدامه على نظام Windows مع WSL أو macOS.

3.2: المعرفة الأساسية بنظام Linux

إن فهم أوامر Linux الأساسية وبنية نظام الملفات سيفيد تعلمك بشكل كبير.

الفصل الرابع: البدء بالأوامر الأساسية

لوضع الأساس لبرمجة Bash النصية، لنبدأ بالأوامر الطرفية الأساسية:

يأمروصفمثال
echoيعرض النص الذي تم تمريره كوسيطة.echo Hello
catيعرض محتويات الملف.cat file.txt
البرمجة النصية لـ Bash Shell: دليل شامل

الفصل الخامس: اختبار التعبيرات

يقدم باش test أو بين قوسين مربعين [ ] لتقييم التعبيرات. على سبيل المثال:

كود باش انسخ# Using the `test` command
test "Hello" = "Hello" 

# Using square brackets
[ "Hello" = "Hello" ]

الفصل السادس: العبارات الشرطية

يدعم باش if-elif-else يبني و case تصريحات لاتخاذ القرار.

6.1: إذا-إليف-إلس

كود باش انسخif [ "$1" = "admin" ]; then
 echo "Oh, you're the boss here. Welcome."
elif [ "$1" = "help" ]; then
 echo "Just enter your username, please."
else
 echo "I don't know who you are, but you're not the boss of me."
fi

6.2: القضية

كود باش انسخcase "$1" in
 "admin")
 echo "Oh, you're the boss here. Welcome."
 ;;
 "help")
 echo "Just enter your username, please."
 ;;
 *)
 echo "I don't know who you are, but you're not the boss of me."
 ;;
esac

الفصل السابع: المصفوفات والحلقات

تسهل المصفوفات والحلقات في Bash معالجة القيم المتعددة.

7.1: المصفوفات

كود باش انسخmy_first_list=(1 2 3 4 5)

# Accessing the first element of the array
echo ${my_first_list[0]}

7.2: الحلقات

كود باش انسخ# Using for loop to print array elements
for element in ${my_first_list[*]}
do
 echo $element
done

الفصل الثامن: الوظائف

تتيح لك الوظائف الموجودة في Bash تنظيم التعليمات البرمجية وإعادة استخدامها وتعديلها.

bashCopy codeshow_uptime() {
 local up=$(uptime -p | cut -d' ' -f2)  # Get uptime
 local since=$(uptime -s)  # Get start time

 cat <<- EOF
 -----------
 This machine has been up for ${up}.
 It has been running since ${since}.
 -----------
 EOF
}

الفصل التاسع: معالجة النصوص باستخدام Awk وSed

تعد Awk وSed من الأدوات القوية لمعالجة البيانات النصية ومعالجتها في Bash.

9.1: أوك

Awk ليس مجرد معالج نصوص ولكنه لغة برمجة كاملة تسمح بإجراء عمليات معقدة على نص الإدخال.

9.2: السيد

Sed، اختصار لـ Stream Editor، هو أداة مساعدة تستخدم لإجراء تحويلات النص. لاحظ أن Sed لا يقوم بتحرير الملفات في مكانها ما لم يتم تثبيت -i يتم استخدام الخيار، ومن الضروري التأكد من أن لديك نسخة احتياطية أو تعمل على نسخة عند التعلم.

كود باش انسخ# Replacing 'fly' with 'grasshopper' in set_test.txt
sed 's/fly/grasshopper/g' set_test.txt

يعد هذا الدليل بمثابة مقدمة للبرمجة النصية لـ Bash Shell. مع الممارسة، سوف تصبح مرتاحًا مع البرمجة النصية لـ Bash، مما يفتح عالمًا من إمكانيات الأتمتة والإدارة القوية داخل بيئة الكمبيوتر الخاصة بك.

  • ما الفرق بين البرمجة النصية Bash و Shell؟

    البرمجة النصية لـ Shell هي مصطلح أوسع يشمل البرامج النصية المكتوبة لأصداف مختلفة مثل Bourne Shell (sh)، وBourne Again Shell (Bash)، وKorn Shell (ksh)، وC Shell (csh)، وما إلى ذلك. تشير برمجة Bash على وجه التحديد إلى البرمجة النصية لـ Bash. Shell، وهي قذيفة أحدث وغنية بالميزات وأكثر شعبية.

  • هل أحتاج إلى معرفة أوامر Linux قبل بدء البرمجة النصية لـ Bash؟

    نعم، يعد الفهم الأساسي لأوامر Linux مفيدًا عند البدء ببرمجة Bash النصية نظرًا لأن نصوص Bash هي في الأساس سلسلة من أوامر Linux يتم تنفيذها في تسلسل مع بعض منطق التحكم.

  • هل يمكنني تنفيذ برامج Bash النصية الخاصة بي على أنظمة تشغيل أخرى غير Linux؟

    نعم، يمكنك تنفيذ البرامج النصية لـ Bash على أي نظام تشغيل يتوفر به Bash Shell. يتضمن ذلك أنظمة Unix وmacOS وWindows مع تثبيت نظام Windows الفرعي لنظام Linux (WSL).

  • هل يمكن أن تحل برمجة Bash محل الحاجة إلى لغات برمجة أخرى مثل Python أو Perl؟

    على الرغم من أن برمجة Bash قوية وكافية للعديد من المهام على مستوى النظام واحتياجات البرمجة النصية البسيطة، إلا أنها لا تهدف إلى استبدال لغات البرمجة ذات الأغراض العامة مثل Python أو Perl. يتم التعامل مع هياكل البيانات المعقدة والبرمجة الموجهة للكائنات وبعض المهام الأخرى بشكل أفضل في لغات مثل بايثون.

  • لقد كتبت نص Bash لكنه لا يتم تنفيذه. ماذا يمكن أن يكون الخطأ؟

    قد يكون هناك عدة أسباب لعدم تنفيذ البرنامج النصي Bash. تتضمن بعض المشكلات الشائعة أخطاء في بناء الجملة في البرنامج النصي، أو أذونات ملف غير صحيحة (يجب أن يكون لدى البرنامج النصي أذونات تنفيذ)، أو قد يفتقد السطر الأول من البرنامج النصي Shebang الصحيح (#!/bin/bash) لتحديد أنه يجب تشغيله باستخدام Bash.

احصل على الوكيل التجريبي المجاني الآن!

المشاركات الاخيرة

التعليقات (0)

لا توجد تعليقات هنا حتى الآن، يمكنك أن تكون الأول!

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

اختر وشراء الوكيل

وكلاء مركز البيانات

وكلاء الدورية

وكلاء UDP

موثوق به من قبل أكثر من 10000 عميل حول العالم

العميل الوكيل
العميل الوكيل
وكيل العميلflowch.ai
العميل الوكيل
العميل الوكيل
العميل الوكيل