از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
چگونه طول یک آرایه را در Shell Script پیدا کنیم
سرفصلهای مطلب
[*][*]اسکریپت نویسی پوسته یک مهارت ضروری است که هر مدیر لینوکس یا یونیکس باید از آن برخوردار باشد. توانایی دستکاری و process داده یکی از وظایف کلیدی یک مدیر لینوکس/یونیکس است. یافتن طول آرایه یک عملیات مکرر در اسکریپت نویسی پوسته است. تعداد کل عناصر در یک آرایه طول آرایه را تعیین می کند. برای تعیین طول آرایه، در این پست به تکنیکهای مختلف اسکریپت نویسی پوسته نگاه خواهیم کرد.
چگونه طول یک آرایه را در Shell Script پیدا کنیم
یافتن طول یک آرایه در پوسته می تواند برای حلقه زدن روی عناصر و انجام عملیات مفید باشد روی آنها را همچنین، می توان از آن برای تأیید اینکه یک آرایه دارای تعداد معینی از عناصر است قبل از ادامه با یک اسکریپت استفاده کرد، در زیر چند روش برای انجام آن وجود دارد:
روش 1: استفاده از پارامتر داخلی
ساده ترین راه برای یافتن طول یک آرایه استفاده از پارامتر داخلی پوسته ${#array است.[@]} یا ${#array[*]}. از علامت های @ و * برای ارجاع به تمام عناصر آرایه استفاده می شود.
[*]
my_array=(قرمز آبی صورتی)[*]
[*]
اکو “طول آرایه است ${#my_array[@]}“
در اینجا خروجی اسکریپت پوسته است که از پارامتر داخلی خود برای بدست آوردن طول یک آرایه استفاده می کند:
روش 2: با استفاده از دستور expr
دستور expr برای ارزیابی یک عبارت و چاپ نتیجه در خروجی استاندارد استفاده می شود. می توانیم از دستور wc -w برای شمارش تعداد عناصر آرایه استفاده کنیم و نتیجه را به دستور expr ارسال کنیم تا طول آرایه را بدست آوریم.
[*]
my_array=(قرمز آبی صورتی)[*]
[*]
طول=$(اکو ${my_array[@]} | دستشویی -w)[*]
[*]
اکو “طول آرایه است $(expr $length)“
در اینجا خروجی اسکریپت پوسته است که از expr برای بدست آوردن طول یک آرایه استفاده می کند:
روش 3: استفاده از حلقه
همچنین می توانیم طول یک آرایه را با استفاده از حلقه for پیدا کنیم. در این روش از طریق هر عنصر آرایه تکرار می کنیم و تعداد عناصر را می شماریم.
[*]
my_array=(قرمز آبی صورتی)[*]
[*]
طول=0[*]
[*]
برای من که در “${my_array[@]}“[*]
[*]
انجام دادن[*]
[*]
طول=$((طول +1))[*]
[*]
انجام شده[*]
[*]
اکو “طول آرایه است طول $“
نتیجه
در این مقاله، راههای مختلف برای یافتن طول آرایه در اسکریپت پوسته را بررسی کردهایم. ما از پارامتر داخلی پوسته ${#array استفاده کردهایم[@]}، دستور expr و یک حلقه for برای یافتن طول آرایه. هر سه روش به یک اندازه موثر هستند و بستگی دارد روی ترجیحات و الزامات کاربر برای انتخاب روش مناسب.
[*]
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
[*]زمان انتشار: 1402-12-28 21:34:03