وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

حلقه Bash از طریق فهرستی از رشته ها

0 4
زمان لازم برای مطالعه: 4 دقیقه


[*][*]





[*]

فهرستی از رشته ها یا آرایه ها یا دنباله ای از عناصر را می توان با استفاده از آن تکرار کرد برای حلقه در bash. روش تکرار لیست رشته ها در Bash توسط حلقه for در این آموزش با استفاده از موارد مختلف نشان داده شده است. bash نمونه های اسکریپت اگر تازه کار هستید bash برنامه نویسی سپس می توانید آموزش را بخوانید روی BASH برای مثال های حلقه قبل از شروع این آموزش.

مثال-1: تکرار یک رشته از چند کلمه در حلقه for

ایجاد یک bash فایلی با نام ‘for_list1.sh’ و اسکریپت زیر را اضافه کنید. یک مقدار رشته با فاصله در حلقه برای حلقه استفاده می شود. به طور پیش فرض، مقدار رشته با فاصله از هم جدا می شود. حلقه For رشته را به کلمات و تقسیم می کند print هر کلمه با اضافه کردن یک خط جدید.

#!/صندوقچه/bash[*]
# یک رشته با فاصله با استفاده از حلقه for بخوانید[*]
برای ارزش که در من برنامه نویسی را دوست دارم[*]
انجام دادن[*]

echo ارزش دلار[*]
انجام شده

خروجی:

$ bash for_list1.sh

حلقه Bash از طریق فهرستی از رشته ها

مثال-2: تکرار یک متغیر رشته با استفاده از حلقه for

ایجاد یک bash فایلی با نام ‘for_list2.sh’ و اسکریپت زیر را اضافه کنید. یک متن را به متغیر اختصاص دهید، StringVal و مقدار این متغیر را با استفاده از حلقه for بخوانید. این مثال نیز مانند مثال قبلی عمل می کند و مقدار متغیر را به کلمات بر اساس تقسیم می کند روی فضا.

#!/صندوقچه/bash[*]
# یک متغیر رشته ای با مقدار تعریف کنید[*]
StringVal=“به linuxhinت خوش آمدید”[*]
[*]
# متغیر رشته را با استفاده از حلقه for تکرار کنید[*]
برای val که در $StringVal; انجام دادن[*]

پیشنهاد می‌کنیم بخوانید:  آموزش باش گلوبینگ

echo $val[*]
انجام شده

خروجی:

$ bash for_list2.sh

حلقه Bash از طریق فهرستی از رشته هاحلقه Bash از طریق فهرستی از رشته ها

مثال-3: آرایه ای از مقادیر رشته را تکرار کنید

ایجاد یک bash فایلی با نام ‘for_list3.sh’ و اسکریپت زیر را اضافه کنید. آرایه ای از مقادیر رشته با نوع در این اسکریپت اعلام می شود. دو مقدار در آرایه که حاوی فاصله هستند عبارتند ازلینوکس مینت“و”لینوکس رد هت‘. این اسکریپت خروجی را با تقسیم این مقادیر به چند کلمه و چاپ به عنوان مقدار جداگانه تولید می کند. اما این خروجی مناسب نیست. راه حل این نوع مسائل در مثال بعدی نشان داده شده است.

#!/صندوقچه/bash[*]
[*]
# آرایه ای از رشته را با نوع اعلام کنید[*]
اعلام StringArray=(“لینوکس مینت” “فدورا” [*]

“لینوکس رد کلاه” “اوبونتو” “دبیان” )[*]
[*]
# آرایه رشته را با استفاده از حلقه for تکرار کنید[*]
برای val که در ${StringArray[@]}; انجام دادن[*]

echo $val[*]
انجام شده

خروجی:

$ bash for_list3.sh

حلقه Bash از طریق فهرستی از رشته هاحلقه Bash از طریق فهرستی از رشته ها

مثال-4: مقدار رشته چند کلمه را به صورت یک مقدار چاپ کنید

ایجاد یک bash فایلی با نام ‘for_list4.sh’ و اسکریپت زیر را اضافه کنید. در این مثال، هر عنصر از متغیر آرایه، StringArray حاوی مقادیر دو کلمه است. به print هر مقدار را بدون تقسیم و حل مشکل مثال قبلی، فقط باید متغیر آرایه را با آن محصور کنید نقل قول دوگانه درون حلقه برای.

#!/صندوقچه/bash[*]
[*]
# یک آرایه رشته ای را با نوع اعلام کنید[*]
اعلام StringArray=(“ویندوز ایکس پی” “ویندوز 10” [*]

“ویندوز من” “ویندوز 8.1” “ویندوز سرور 2016” )[*]
[*]
# مقادیر آرایه را با فاصله بخوانید[*]
برای val که در ${StringArray[@]}; انجام دادن[*]

echo $val[*]
انجام شده

خروجی:

$ bash for_list4.sh

حلقه Bash از طریق فهرستی از رشته هاحلقه Bash از طریق فهرستی از رشته ها

مثال-5: تکرار مقادیر رشته آرایه با استفاده از ‘*’

ایجاد یک bash فایلی با نام ‘for_list5.sh’ با کد زیر. در اینجا، نماد ‘*’ برای خواندن تمام مقادیر رشته آرایه استفاده می شود. حلقه for اول برای نمایش مقادیر آرایه در چندین خط و حلقه دوم for برای نمایش مقادیر آرایه در یک خط استفاده می شود.

#!/صندوقچه/bash[*]
[*]
#اعلان یک آرایه رشته ای[*]
LanguageArray=(“PHP” “جاوا” “C#” “C++” “VB.Net” “پایتون” “پرل”)[*]
[*]
# چاپ مقادیر آرایه در خطوط[*]
echo “چاپ هر عنصر در خط جدید”[*]
برای val1 که در ${LanguageArray[*]}; انجام دادن[*]

پیشنهاد می‌کنیم بخوانید:  روش تغییر نام فایل در Bash

echo $val1[*]
انجام شده[*]
[*]
echo “”[*]
[*]
# مقادیر آرایه را در یک خط چاپ کنید[*]
echo “چاپ همه عناصر در یک خط”[*]
برای val2 که در ${LanguageArray[*]}; انجام دادن[*]

echo $val2[*]
انجام شده

خروجی:

$ bash for_list5.sh

حلقه Bash از طریق فهرستی از رشته هاحلقه Bash از طریق فهرستی از رشته ها

مثال-6: تکرار مقادیر رشته جدا شده با کاما

جدید ایجاد کنید bash فایلی با نام ‘for_list6.sh’ با کد زیر. اینجا، کاما (،) برای تقسیم مقادیر رشته استفاده می شود. IFS متغیر برای تنظیم جداکننده فیلد استفاده می شود.

#!/صندوقچه/bash[*]
فهرست داده ها=“HTML5، CCS3، BootStrap، JQuery”[*]
Field_Separator=$IFS[*]
[*]
# کاما را به عنوان جداکننده فیلد داخلی برای لیست رشته تنظیم کنید[*]
IFS=،[*]
برای val که در $DataList;[*]
انجام دادن[*]

echo $val[*]
انجام شده[*]
[*]
IFS=$Field_Separator

خروجی:

$ bash for_list6.sh

حلقه Bash از طریق فهرستی از رشته هاحلقه Bash از طریق فهرستی از رشته ها

مثال-7: خواندن چندین آرایه رشته ای با هم

ایجاد یک bash فایلی با نام ‘for_list7.sh’ و اسکریپت زیر را اضافه کنید. در این مثال، دو آرایه رشته ای تعریف شده و در یک آرایه دیگر ترکیب شده اند. حلقه for خارجی برای خواندن آرایه ترکیبی و حلقه for داخلی برای خواندن هر آرایه داخلی استفاده می شود.

#! /صندوقچه/bash[*]
str_array1=(“Magento 2.2.4” “ووکامرس”)[*]
str_array2=(“CodeIgnitor” “لاراول”)[*]
ترکیب کردن=(str_array1 str_array2)[*]
برای arrItem که در ${ترکیب کنید[@]}[*]
انجام دادن[*]

ارزیابی برای val در “${“$arrItem‘[@]}”؛انجام دادن echo “$val”;انجام شد[*]
انجام شده

خروجی:

$ bash for_list7.sh

حلقه Bash از طریق فهرستی از رشته هاحلقه Bash از طریق فهرستی از رشته ها

مثال-8: استفاده از الگو برای خواندن لیست رشته ها

جدید ایجاد کنید bash فایل به نام for_list8.sh با کد زیر اینجا، ‘/, /’ الگو برای تقسیم مقادیر رشته بر اساس استفاده می شود روی کاما

#!/صندوقچه/bash[*]
[*]
# لیستی از متغیر رشته را تعریف کنید[*]
stringList=وردپرس، جوملا، مجنتو[*]
[*]
# از کاما به عنوان جداکننده استفاده کنید و به عنوان الگو اعمال کنید[*]
برای val که در ${stringList//،/ }[*]
انجام دادن[*]

echo $val[*]
انجام شده

خروجی:

$ bash for_list8.sh

حلقه Bash از طریق فهرستی از رشته هاحلقه Bash از طریق فهرستی از رشته ها

امیدوارم مثال های این آموزش به شما در درک کاربرد آن کمک کند برای حلقه برای تکرار لیست رشته ها، برای یک ویدیو روی این موضوع را در زیر ببینید:

[*]

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد [*]
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

[*]زمان انتشار: 1403-01-01 01:31:04

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید