Menu
CoddyTech

المتغيرات في الـ Scripts

جزء من قسم الأساسيات في رحلة Terminal على Coddy. الدرس 68 من 82.

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

لإنشاء متغير داخل سكربت، استخدم الصياغة نفسها التي تعلمتها في الطرفية: لا تضع مسافات حول علامة يساوي. لاستخدام قيمة المتغير، أضف علامة الدولار قبل اسمه:

#!/bin/bash
greeting="Hello"
name="World"
echo "$greeting, $name!"

يُخرج هذا البرنامج النصي Hello, World!. تخزّن المتغيرات greeting وname نصًا يُستبدل عند تشغيل البرنامج النصي.

تصبح المتغيرات مفيدة بشكل خاص عندما تحتاج إلى استخدام القيمة نفسها عدة مرات. إذا أشرت إلى مسار ملف في عدة مواضع، فإن تخزينه في متغير يعني أنك لا تحتاج إلا إلى تغييره مرة واحدة:

#!/bin/bash
backup_dir="/home/user/backups"
echo "Creating backup in $backup_dir"
mkdir -p "$backup_dir"

لاحظ علامات الاقتباس حول "$backup_dir". يُعد إحاطة المتغيرات بعلامتي اقتباس مزدوجتين ممارسة جيدة، لأنها تتعامل بشكل صحيح مع المسارات أو القيم التي تحتوي على مسافات. من دون علامات اقتباس، سيتسبب مسار مثل /my documents في تعطيل الأمر.

تعمل المتغيرات في البرامج النصية تمامًا كما في الطرفية، لكنها لا توجد إلا أثناء تشغيل البرنامج النصي. وبمجرد انتهاء البرنامج النصي، تختفي تلك المتغيرات.

challenge icon

التحدي

سهل

أنشئ نصًا برمجيًا للصدفة باسم intro.sh يستخدم المتغيرات لعرض رسالة مخصصة.

يجب أن يقوم النص البرمجي بما يلي:

  1. يبدأ بسطر shebang (#!/bin/bash)
  2. ينشئ متغيرًا باسم language وتكون قيمته Bash
  3. ينشئ متغيرًا باسم skill وتكون قيمته scripting
  4. يستخدم echo لطباعة المتغيرين بالتنسيق التالي: Learning Bash scripting!

اجعل النص البرمجي قابلًا للتنفيذ وشغّله. يجب أن يكون الناتج:

Learning Bash scripting!

ضع كل سطر تكتبه بين علامتي اقتباس مفردتين: echo 'echo "Hello $name"' >> script.sh. تمنع علامات الاقتباس المفردة الصدفة من استبدال $name أثناء كتابة الملف، وبذلك يحتفظ النص البرمجي بالمتغير ويوسّع قيمته عند تشغيله. أما علامات الاقتباس المزدوجة فستستبدل القيمة فورًا.

تلميح: أنشئ النص البرمجي باستخدام echo مع إعادة التوجيه. تذكّر الإشارة إلى المتغيرات باستخدام $ في عبارة echo، مثل echo "Learning $language $skill!"

جرّب بنفسك

الطرفية
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: Playground لـ Terminal