عند الحديث عن المتغيرات (varibales) كل لغة برمجة تتضمن المتغيرات والbash احد هاته اللغات ليس هناك فرق . قبل أن نكتب أي كود برمجي سأفترض أن كلمة متغير جديدة عليك , لدى . سأبدأ بالإجابة على هاته الأسئلة , ماهي المتغيرات ؟ وما هي فوائد استخدامها ؟
المتغير هو مساحة تخزن في الذاكرة , حيث يتم تخزين قيمة معينة في تلك المساحة لاستخدامها في البرنامج . كما هو الحال في الرياضيات x=1 , 1 هو قيمة المتغير , والمتغير هو x . سُميت بالمتغيرات لانه يمكن التغيير في قيمتها .
هناك نوعان من المتغيرات التي يمكنك استعمالها في النص البرمجي:
· متغيرات مُعرفة من قبل المستخدم
· متغيرات بيئة الshell (Environment variables)
متغيرات مُعرفة من قبل المستخدم
دعنا نعود الى المثال الأول في أول درس الذي قمنا فيه بطباعة " Hello World " لنقم بوضعها في متغير وطباعته .
ملاحظة : يجب عدم وضع مساحة حول علامة "=" :
ü Var1=Hello
D Var2 =Hello
D Var3 = Hello
في الحالة الأولى Var1 يرى المترجم shell الرمز "=" ويعامل الامر كمهمة متغير , وفي الحالات الاخرى يفترض shell ان var2 اسم أمر معين ويحاول تنفيذه , كما هو الحال أيضا مع Var3 . وبما أنه لا يوجد مثل هذا الأمر ، فسيظهر خطأ.
امممم لنمُر للتطبيق ,
#!/bin/bash
variable="Hello World"
echo $variable
variable : هو اسم المتغير
Hello world : قيمة المتغير
بعد ذلك تأتي طباعة قيمة المتغير .
كما ترى ، لطباعة قيمة المتغير ، يجب عليك استخدام الدولار ($) قبله.
لاحظ أنه لا توجد مسافات بين اسم المتغير وعلامة يساوي ، أو بين
علامة يساوي والقيمة و بين $ واسم المتغير .
انواع قيم المتغير
#! /bin/bash
MESSAGE="ITech User"
SHORT_MESSAGE=salam
NUMBER=1
height=175
weight="62kG"
MY_Password=123abc
نوع آخر مفيد من متغير المُعرف من قبل المستخدم هو المصفوفة array)) . المصفوفة يمكن أن تحتوي على مجموعة من القيم . لذلك ، إذا كان لديك عشرات القيم التي تريد استخدامها ، يجب عليك استخدام المصفوفات بدلاً من
ملء السكربت الخاص بك مع المتغيرات.
للاعلان عن المصفوفات يكفي بتضمين عناصر المصفوفة بين قوسين , كما يلي :
#! /bin/bash
Myarray=(I love Python and Bash)
للوصول الى عنصر معين في المصفوفة , يمكنك تحديد المؤشر عليه , مثال :
#! /bin/bash
Myarray=(I love Python and Bash)
echo ${Myarray[1]} # سيطبع العنصر الثاني : love
لطباعة عناصر المصفوفة :
#! /bin/bash
Myarray=(I love Python and Bash)
echo ${Myarray[*]} # I love Python and Bash سيطبع
لإزالة عنصر معين من المصفوفة :
#! /bin/bash
Myarray=(I Hate Love Python and Bash)
unset ${Myarray[1]} #تمت ازالة العنصر الثاني
echo ${Myarray[*]} # I Love Python and Bash سيطبع
User-defined variables | shell متغيرات بيئة
هذه المتغيرات تابتة ومخصصة لوظيفة تم تحدديها من Shell يمكن استخدامها في السكربت , مثل : $BASH_VERSION , $PATH و $USER
هنالك العديد منها لسردها فقط استخدم الامر : printenv
لاحظ أن جميع متغيرات البيئة مكتوبة بأحرف كبيرة .
في انتظارك في الدرس القادم
[full-width]
إرسال تعليق