جملة If الشرطية
جزء من قسم الأساسيات في رحلة Terminal على Coddy. الدرس 70 من 82.
حتى الآن، تنفّذ نصوصك البرمجية كل أمر من الأعلى إلى الأسفل دون اتخاذ أي قرارات. ولكن ماذا لو أردت أن ينفّذ نصك البرمجي أشياء مختلفة بناءً على شروط معينة؟ هنا يأتي دور عبارة if.
تتيح عبارة if للنص البرمجي اتخاذ القرارات. فهي تتحقق مما إذا كان الشرط صحيحًا، وإذا كان كذلك، تُشغّل كتلة من التعليمات البرمجية. إليك البنية الأساسية:
#!/bin/bash
age=18
if [ $age -ge 18 ]; then
echo "You are an adult"
fiيوضع الشرط داخل أقواس مربعة مع مسافات حوله. تشير الكلمة المفتاحية then إلى بداية التعليمات البرمجية التي سيتم تشغيلها، وتنهي fi (إذا كُتبت بالعكس) العبارة.
يمكنك أيضًا معالجة الحالة التي يكون فيها الشرط خاطئًا باستخدام else:
#!/bin/bash
age=15
if [ $age -ge 18 ]; then
echo "You are an adult"
else
echo "You are a minor"
fiتتضمن عوامل المقارنة الشائعة للأرقام -eq (يساوي)، و-ne (لا يساوي)، و-gt (أكبر من)، و-lt (أصغر من)، و-ge (أكبر من أو يساوي)، و-le (أصغر من أو يساوي). بالنسبة إلى السلاسل النصية، استخدم = للمساواة و!= لعدم المساواة.
تذكّر دائمًا تضمين مسافات داخل الأقواس ووضع متغيراتك بين علامتي اقتباس لتجنّب الأخطاء مع القيم الفارغة.
التحدي
سهلأنشئ برنامجًا نصيًا للصدفة باسم check_score.sh يستخدم عبارة if لتقييم درجة اختبار.
يجب أن يقوم البرنامج النصي بما يلي:
- يبدأ بسطر shebang (
#!/bin/bash) - ينشئ متغيرًا باسم
scoreبالقيمة75 - يستخدم عبارة if للتحقق مما إذا كانت الدرجة أكبر من أو تساوي 70
- إذا كان الشرط صحيحًا، يطبع:
You passed! - إذا كان الشرط خاطئًا، يطبع:
You failed.
اجعل البرنامج النصي قابلًا للتنفيذ وشغّله. بما أن الدرجة هي 75، فيجب أن يكون الناتج:
You passed!تلميح: تذكّر استخدام
-geللمقارنة «أكبر من أو يساوي»، وإضافة مسافات داخل الأقواس المربعة، وإنهاء عبارة if باستخدامfi.لا يوجد محرر ملفات هنا، لذا اكتب الملف مباشرةً من الصدفة باستخدام مستند هنا: اكتب
cat > check_score.sh << 'EOF'، ثم أسطر البرنامج النصي، ثم سطرًا أخيرًا يحتوي علىEOFفقط.
جرّب بنفسك
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
2التنقل
عرض مسار المجلد الحاليعرض الملفاتتغيير المجلدالمسارات المطلقة مقابل المسارات النسبيةمجلد المنزل ومجلد الجذرخلاصة - حدد مسارك8إعادة التوجيه
المخرجات القياسيةالكتابة فوق ملفالإضافة إلى ملفالمدخلات القياسيةالخطأ القياسيمراجعة - بناء سجل الأحداث11الأذونات
فهم الأذوناتقراءة الأذوناتChmod باستخدام الأرقامChmod باستخدام الرموزملكية الملفاتملخص - إحكام الحماية14مشروع سكربت النسخ الاحتياطي
نظرة عامة على المشروعالحصول على مسار المصدرتدرّب بنفسك: Playground لـ Terminal