از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
بیانیه مورد Bash
 
				سرفصلهای مطلب
 
را bash case  دستور معمولاً برای ساده کردن شرط های پیچیده زمانی که چندین گزینه مختلف وجود دارد استفاده می شود.  با استفاده از case بیانیه به جای تو در تو if اظهارات به شما کمک می کند bash اسکریپت ها قابل خواندن تر و نگهداری آسان تر هستند.
باش case عبارت مفهومی شبیه به جاوا اسکریپت یا C دارد switch بیانیه.  تفاوت اصلی این است که برخلاف C switch بیانیه، باش case دستور پس از یافتن یکی و اجرای دستورات مرتبط با آن الگو، به جستجوی یک الگوی مطابقت ادامه نمی دهد.
این آموزش اصول اولیه Bash را پوشش می دهد case بیانیه و به شما نشان می دهد که چگونه از آن در اسکریپت های پوسته خود استفاده کنید.
case  نحو بیانیه 
نحو دستور مورد Bash از عبارت “caseکلمه کلیدی به دنبال مقداری که باید مطابقت داده شود،in” کلمه کلیدی و یک یا چند الگو با بلوک های کد مربوطه محصور شده در ”;;” بیانیه:
case EXPRESSION in
  PATTERN_1)
    STATEMENTS
    ;;
  PATTERN_2)
    STATEMENTS
    ;;
  PATTERN_N)
    STATEMENTS
    ;;
  *)
    STATEMENTS
    ;;
esac
- هر یک caseبیانیه با شروع می شودcaseکلمه کلیدی و به دنبال آن عبارت case و theinکلمه کلیدی. این بیانیه با خاتمه می یابدesacکلمه کلیدی.
- شما می توانید از چندین الگوی جدا شده توسط |اپراتور. را)اپراتور یک لیست الگو را خاتمه می دهد.
- یک الگو می تواند داشته باشد شخصیت های خاص
 .
- یک الگو و دستورات مرتبط با آن به عنوان یک بند شناخته می شوند.
- هر بند باید با ;;.
- دستورات مربوط به اولین الگوی که با عبارت مطابقت دارد اجرا می شوند.
- استفاده از علامت ستاره (*) به عنوان الگوی نهایی برای تعریف حالت پیش فرض. این الگو همیشه مطابقت دارد.
- اگر هیچ الگوی مطابقت نداشته باشد، وضعیت بازگشت صفر است. در غیر این صورت، وضعیت بازگشت، وضعیت خروج از دستورات اجرا شده است.
مثال بیان موردی
در زیر نمونه ای از استفاده از a case بیانیه در الف bash خطی که زبان رسمی یک کشور خاص را چاپ می کند:
#!/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اسکریپت از شما می خواهد که وارد یک کشور شوید.  به عنوان مثال، اگر “Lithuania” را تایپ کنید، با الگوی اول مطابقت دارد echo دستور در آن بند اجرا خواهد شد.
فیلمنامه خواهد شد print خروجی زیر:
Enter the name of a country: Lithuania
The official language of Lithuania is Lithuanian
اگر کشوری را وارد کنید که با هیچ الگوی دیگری به جز علامت ستاره پیش فرض مطابقت ندارد، مثلاً آرژانتین، اسکریپت echo دستور داخل عبارت پیش فرض
Enter the name of a country: Argentina
The official language of Argentina is unknown
نتیجه
در حال حاضر، شما باید درک خوبی از روش نوشتن داشته باشید bash case  بیانیه.  آنها اغلب برای ارسال پارامترها به اسکریپت پوسته از خط فرمان استفاده می شوند.  به عنوان مثال، از اسکریپت های init استفاده کنید case بیانیه هایی برای شروع، توقف یا راه اندازی مجدد خدمات.
اگر سوال یا بازخوردی دارید، در کامنت بگذارید.
terminal
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1403-03-19 14:35:03
 
			 
				

