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

سرور مجازی NVMe

آرایه انجمنی در Bash

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






یک متغیر آرایه برای ذخیره داده های متعدد با شاخص استفاده می شود و مقدار هر عنصر آرایه با مقدار شاخص مربوطه آن عنصر قابل دسترسی است. آرایه ای که می تواند مقدار رشته را به عنوان یک شاخص یا کلید ذخیره کند، آرایه انجمنی نامیده می شود. یک آرایه انجمنی را می توان اعلام کرد و در آن استفاده کرد bash اسکریپت مانند سایر زبان های برنامه نویسی این ویژگی اضافه شده است bash 4. چگونه می توان آرایه انجمنی را اعلام کرد و به آن دسترسی پیدا کرد bash در این آموزش توضیح داده شده است.

قبل از شروع قسمت بعدی این آموزش، نسخه فعلی Bash را بررسی کنید. دستور زیر را از terminal برای بررسی نسخه نصب شده bash. اگر نصب شده باشد bash نسخه در سیستم عامل شما کمتر از 4 است پس باید آن را نصب کنید bash برای ادامه این آموزش ابتدا نسخه 4.

$ bash — نسخه

خروجی زیر نشان می دهد که نسخه فعلی از bash 4.4.19 است.

آرایه انجمنی در Bash

اعلان و مقداردهی اولیه آرایه انجمنی:

یک آرایه انجمنی را می توان در آن اعلام کرد bash با استفاده از اعلام کلمه کلیدی و عناصر آرایه را می توان در زمان اعلام آرایه یا پس از اعلام متغیر آرایه مقداردهی اولیه کرد. اسکریپت زیر یک آرایه انجمنی به نام ایجاد می کند assArray1 و چهار مقدار آرایه به صورت جداگانه مقداردهی اولیه می شوند.

$ اعلام assArray1
$ assArray1[fruit]=انبه
$ assArray1[bird]=کوکتل
$ assArray1[flower]=گل رز
$ assArray1[animal]=ببر

خروجی

آرایه انجمنی در Bashآرایه انجمنی در Bash

اسکریپت زیر آرایه انجمنی را مقداردهی اولیه می کند. assArrat2 در زمان اعلام آرایه در اینجا، سه مقدار آرایه با کلید در زمان اعلام آرایه تعریف شده است.

$ اعلام assArray2=( [HDD]=سامسونگ [Monitor]=دل [Keyboard]=A4Tech )

خروجی:

آرایه انجمنی در Bashآرایه انجمنی در Bash

دسترسی به آرایه انجمنی:

عناصر آرایه یک آرایه انجمنی را می توان به صورت جداگانه یا با استفاده از هر حلقه ای در دسترس قرار داد. این دو راه در این قسمت از آموزش نشان داده شده است. کلیدهای آرایه و مقادیر می تواند باشد print جدا و با هم

دستورات زیر خواهد بود print دو مقدار از آرایه، assArray1 (پیشتر اعلام شد) با تعیین مقدار کلید.

$ echo ${assArray1[bird]}

پیشنهاد می‌کنیم بخوانید:  چگونه فهرستی را که یک اسکریپت Bash در آن قرار دارد از داخل اسکریپت پیدا کنیم

$ echo ${assArray1[flower]}

خروجی:

پس از اجرای دستورات بالا خروجی زیر ظاهر می شود.

آرایه انجمنی در Bashآرایه انجمنی در Bash

گاهی اوقات لازم است print همه کلیدها یا همه مقادیر آرایه. تمام کلیدهای یک آرایه را می توان با استفاده از حلقه یا چاپ کرد bash گسترش پارامتر اولین دستور زیر خواهد بود print تمام کلیدهای آرایه در هر خط با استفاده از حلقه for و فرمان دوم will print تمام کلیدهای آرایه در یک خط با استفاده از bash گسترش پارامتر اینجا، ‘!’ نماد برای خواندن کلیدهای آرایه انجمنی استفاده می شود.

$ برای کلید که در ${!assArray1[@]}; انجام دادن echo کلید $; انجام شده

$ echo ${!assArray1[@]}

خروجی:

پس از اجرای دستورات بالا خروجی زیر ظاهر می شود.

آرایه انجمنی در Bashآرایه انجمنی در Bash

تمام مقادیر یک آرایه را می توان با استفاده از حلقه یا چاپ کرد bash گسترش پارامتر اولین دستور زیر خواهد بود print تمام مقادیر آرایه در هر خط با استفاده از حلقه for و فرمان دوم will print تمام مقادیر آرایه در یک خط با استفاده از bash گسترش پارامتر

$ برای val که در ${assArray1[@]}; انجام دادن echo $val; انجام شده

$ echo ${assArray1[@]}

خروجی:

پس از اجرای دستورات بالا خروجی زیر ظاهر می شود.

آرایه انجمنی در Bashآرایه انجمنی در Bash

هم کلیدها و هم مقادیر یک آرایه انجمنی را می توان با استفاده از حلقه for چاپ کرد. اسکریپت زیر خواهد بود print تمام مقادیر با کلیدهای آرایه انجمنی نامگذاری شده است assArray1. در اینجا، هر کلید آرایه در هر مرحله از حلقه for تجزیه می شود و از کلید به عنوان شاخص آرایه برای خواندن مقدار کلید مربوطه استفاده می شود.

$ برای کلید که در ${!assArray1[@]}; انجام دادن echo کلید $ => ${assArray1[$key]}; انجام شده

خروجی:

پس از اجرای اسکریپت خروجی زیر ظاهر می شود.

آرایه انجمنی در Bashآرایه انجمنی در Bash

افزودن داده های جدید در آرایه انجمنی:

یک عنصر آرایه جدید را می توان به راحتی پس از اعلام و مقداردهی اولیه آرایه به آرایه انجمنی اضافه کرد. دستورات زیر مقادیر آرایه فعلی آرایه را بررسی می کند، assArray2، یک مقدار جدید اضافه کنید،لاجیتک“با کلید،”موش” و دوباره عناصر فعلی آرایه را بررسی کنید.

$ echo ${assArray2[@]}

$ assArray2+=([Mouse]= لاجیتک)

$ echo ${assArray2[@]}

خروجی:

پس از اجرای دستورات خروجی زیر ظاهر می شود.

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

آرایه انجمنی در Bashآرایه انجمنی در Bash

حذف داده ها از آرایه انجمنی:

هر مقدار عنصر از آرایه انجمنی را می توان بر اساس حذف کرد روی مقدار کلیدی دستور ‘unset’ برای حذف مقدار خاص آرایه انجمنی استفاده می شود. از دستورات زیر استفاده می شود، مقدار فعلی آرایه را با کلید بررسی کنید:نظارت کنید“، مقدار را با استفاده از دستور unset حذف کنید و دوباره ” را اجرا کنیدechoدستور برای بررسی مقدار حذف شده است یا خیر. $ echo ${assArray2[Monitor]}

$ تنظیم نشده assArray2[Monitor]

$ echo ${assArray2[Monitor]}

خروجی:

پس از اجرای دستورات خروجی زیر ظاهر می شود.

آرایه انجمنی در Bashآرایه انجمنی در Bash

یافتن شاخص گمشده از آرایه انجمنی:

شاخص یا کلید موجود در یک آرایه را می توان با استفاده از یک دستور شرطی پیدا کرد. اسکریپت زیر کلید آرایه را بررسی می کند، “مانیتور” وجود دارد یا نه مقدار این کلید در مثال قبلی حذف شده است. بنابراین، شرط “if” false خواهد شد و پیام “Not Found” چاپ خواهد شد.

$ اگر [ ${assArray2[Monitor]+_} ]; سپس echo “پیدا شد”; دیگر echo “پیدا نشد”; فی

خروجی:

پس از اجرای اسکریپت خروجی زیر ظاهر می شود.

آرایه انجمنی در Bashآرایه انجمنی در Bash

حذف آرایه انجمنی:

هر آرایه انجمنی را می توان با استفاده از دستور ‘unset’ حذف کرد. اولین دستور زیر خواهد بود print تمام مقادیر آرایه نامگذاری شده assArray1 در صورت وجود آرایه در یک خط. دستور دوم آرایه را حذف می کند. دستور سوم برای بررسی وجود یا حذف آرایه استفاده می شود. اگر آرایه حذف شود، هیچ خروجی ظاهر نمی شود.

$ echo ${assArray1[@]}

$ تنظیم نشده assArray1
$ echo ${assArray1[@]}

خروجی:

پس از اجرای دستورات خروجی زیر ظاهر می شود.

آرایه انجمنی در Bashآرایه انجمنی در Bash

نتیجه

زمانی که لازم است چندین داده جفت کلید-مقدار در آن ذخیره شود bash، پس بهتر است از آرایه انجمنی برای ذخیره داده ها استفاده کنید. اینکه چگونه رمزگذار می تواند آرایه انجمنی را اعلام و مقداردهی اولیه کند، کلیدهای آرایه یا مقادیر یا هر دو را تجزیه کند، عناصر آرایه را اضافه و حذف کند و آرایه را حذف کند در این آموزش با استفاده از اسکریپت های مختلف نشان داده شده است. امیدوارم خواننده بتواند از آرایه انجمنی استفاده کند bash پس از خواندن این آموزش به درستی

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

زمان انتشار: 1402-12-31 17:07:05

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

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

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