ذكري المظهر

بيان حالة باش

معلومات شاملة من ضابط الحالة المدنية بالقنصلية العامة للمملكة المغربية بميلانو

معلومات شاملة من ضابط الحالة المدنية بالقنصلية العامة للمملكة المغربية بميلانو

جدول المحتويات:

Anonim

تُستخدم عبارات حالة Bash عمومًا لتبسيط الشروط الشرطية المعقدة عندما يكون لديك خيارات مختلفة متعددة. باستخدام بيان الحالة بدلاً من تداخله إذا كانت العبارات ستساعدك في جعل نصوص bash أكثر قابلية للقراءة وأسهل في الصيانة.

يحتوي بيان حالة Bash على مفهوم مماثل مع بيان التبديل Javascript أو C. الفرق الرئيسي هو أنه على عكس بيان التبديل C ، فإن بيان حالة Bash لا يستمر في البحث عن تطابق النمط بمجرد العثور على عبارة وتنفيذها المرتبطة بهذا النمط.

في هذا البرنامج التعليمي ، سنغطي أساسيات عبارات حالة Bash وسنريك كيفية استخدامها في البرامج النصية الخاصة بك.

بناء جملة بيان الحالة

بيان حالة Bash يأخذ النموذج التالي:

case EXPRESSION in PATTERN_1) STATEMENTS;; PATTERN_2) STATEMENTS;; PATTERN_N) STATEMENTS;; *) STATEMENTS;; esac

  • يبدأ كل بيان حالة بكلمة أساسية case متبوعة بتعبير الحالة والكلمة الرئيسية. تنتهي العبارة esac الأساسية. يمكنك استخدام أنماط متعددة مفصولة بـ | المشغل أو العامل. ) المشغل ينهي قائمة نقش. يمكن أن يكون للنمط أحرف خاصة. يُعرف النمط والأوامر المرتبطة به باسم جملة. يجب إنهاء كل جملة بـ ;; يتم تنفيذ الأوامر المقابلة للنمط الأول الذي يطابق التعبير. إنه إجراء شائع لاستخدام رمز العلامة النجمية بدل ( * ) كنمط نهائي لتحديد الحالة الافتراضية. سوف يتطابق هذا النمط دائمًا. في حالة عدم مطابقة أي نمط ، تكون حالة الإرجاع هي صفر. خلاف ذلك ، فإن حالة الإرجاع هي حالة الخروج للأوامر المنفذة.

مثال بيان الحالة

فيما يلي مثال يستخدم بيان الحالة في نص bash الذي يطبع اللغة الرسمية لبلد معين:

languages.sh

#!/bin/bash echo -n "Enter the name of a country: " read COUNTRY echo -n "The official language of $COUNTRY is " case $COUNTRY in Lithuania) echo -n "Lithuanian";; Romania | Moldova) echo -n "Romanian";; Italy | "San Marino" | Switzerland | "Vatican City") echo -n "Italian";; *) echo -n "unknown";; esac

احفظ البرنامج النصي المخصص كملف وقم بتشغيله من سطر الأوامر.

bash languages.sh

سيطلب منك البرنامج النصي إدخال بلد. على سبيل المثال ، إذا قمت بكتابة "ليتوانيا" فسوف يتطابق مع النمط الأول وسيتم تنفيذ أمر echo في هذه الفقرة.

سيقوم البرنامج النصي بطباعة الإخراج التالي:

Enter the name of a country: Lithuania The official language of Lithuania is Lithuanian

Enter the name of a country: Argentina The official language of Argentina is unknown

استنتاج

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

محطة باش