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

سرور مجازی NVMe

بسط پارامتر Bash

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


پارامتر در استفاده می شود bash برای ذخیره داده ها انواع مختلفی از داده ها را می توان در پارامتر ذخیره کرد، مانند عدد صحیح، رشته، آرایه و غیره با استفاده از داخلی اعلام کلمه کلیدی. پارامتر می تواند یک پارامتر موقعیتی، پارامتر خاص و متغیر باشد. به طور معمول، ‘$’ نماد استفاده می شود print یا مقدار یک متغیر را به عنوان مثال ‘x=$y’ اختصاص دهید. نماد ‘$’ برای بسط پارامتر نیز استفاده می شود که انواع مختلفی از کاربردها را دارد bash. از بسط پارامتر می توان برای تغییر، گسترش یا جایگزینی مقدار پارامتر استفاده کرد. مهاربندهای اختیاری هنگام استفاده از بسط پارامتر متغیر با متغیر استفاده می شود، مانند ‘echo ${myvar}’. چگونه می توان از بسط پارامتر استفاده کرد bash برای اهداف مختلف در این آموزش نشان داده شده است.

نحو:

برخی بیشتر استفاده می شود bash نحو بسط پارامتر در زیر آورده شده است.

گسترش پارامتر شرح
${variable:-value} اگر متغیر تنظیم نشده یا تعریف نشده است، آن را گسترش دهید ارزش.
${variable:=value} اگر متغیر تنظیم نشده یا تعریف نشده است، آن را تنظیم کنید ارزش به متغیر.
${variable:+value} اگر متغیر تنظیم یا تعریف شده است، آن را گسترش دهید value.
${variable:start:length} رشته فرعی از موقعیت شروع به موقعیت طول متغیر بازیابی می شود.
${variable:start} Substring از موقعیت شروع به قسمت باقیمانده متغیر بازیابی می شود.
${#variable} طول متغیر را بشمارید.
${variable/pattern/string} قسمتی از متغیر را با رشته ای که الگو برای اولین بار مطابقت دارد جایگزین کنید.
${variable//pattern/string} تمام رخدادهای متغیر را با رشته ای جایگزین کنید که همه الگوها مطابقت دارند.
${variable/#pattern/string} اگر الگو در ابتدای متغیر وجود دارد، پس از آن رخداد را با رشته جایگزین کنید.
${variable/%pattern/string} اگر الگو در انتهای متغیر وجود دارد، پس از آن رخداد را با رشته جایگزین کنید.
${variable#pattern} کوتاهترین تطابق را از ابتدای متغیری که الگو مطابقت دارد حذف کنید.
${variable##pattern} طولانی ترین مطابقت را از ابتدای متغیری که الگو مطابقت دارد حذف کنید.
${variable%pattern} کوتاهترین مطابقت را از انتهای متغیری که الگو مطابقت دارد حذف کنید.
${variable%%pattern} طولانی ترین مطابقت را از انتهای متغیری که الگو مطابقت دارد حذف کنید.
پیشنهاد می‌کنیم بخوانید:  چگونه طول آرایه را در Bash پیدا کنیم

بسط پارامتر را می توان در سه گروه دسته بندی کرد. اینها بسط پارامتر شرطی، بسط پارامتر زیر رشته و بسط پارامتر جایگزین هستند. کاربرد این بسط پارامترها با مثال در قسمت بعدی این آموزش توضیح داده شده است.

مثال-1: بسط پارامتر شرطی

از این نوع بسط پارامترها برای بررسی تنظیم یا تنظیم نشده بودن متغیر استفاده می شود

دستور زیر متغیر را بررسی می کند، $myvar تنظیم یا تنظیم نشده است. اگر $myvar تنظیم نشده است، سپس رشته ‘bash‘ اراده print.

$ echo ${myvar:-bash}

دستور زیر خواهد بود print ارزش $myvar اگر تنظیم شده باشد

$ echo $myvar

دستور زیر مقدار ‘ را تنظیم می کندbash‘ به $myvar و print ‘bash‘ به terminal اگر $myvar تنظیم نشده است.

$ echo ${myvar:=bash}

اکنون با دستور زیر بررسی کنید که متغیر تنظیم یا تنظیم نشده باشد.

$ echo $myvar

دستور زیر خواهد بود print،python‘ به terminal اگر $myvar قبل تنظیم شده است.

$ echo ${myvar:+python}

مجدداً دستور زیر را برای بررسی مقدار فعلی اجرا کنید $myvar.

$ echo $myvar

خروجی:

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

بسط پارامتر Bash

مثال-2: بسط پارامتر زیر رشته

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

دستور زیر “بنگلادش” به متغیر، $mystr.

$ mystr=“بنگلادش”

دستور زیر شش کاراکتر را از بین خواهد برد $mystr از موقعیت 0 شروع کنید.

$ echo ${mystr:0:6}

دستور زیر تمام کاراکترها را از بین می برد $mystr، از موقعیت 6 شروع کنید.

$ echo ${mystr:6}

دستور زیر شمارش و print تعداد کل شخصیت های $mystr.

$ echo ${#mystr}

خروجی:

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

بسط پارامتر Bashبسط پارامتر Bash

مثال-3: رشته را با استفاده از گسترش پارامتر جایگزین کنید

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

دستور زیر مقدار را اختصاص می دهد، “اولین ورودی اولین خروجی” در متغیر، $newsstr.

$ newstr=“اولین ورودی اولین خروجی”

بسط پارامتر زیر جایگزین رشته خواهد شد، “اولین“توسط رشته”آخر” از متغیر، $newsstr. جستجوی حساس به حروف برای این جایگزینی اعمال خواهد شد.

$ echo ${newstr/Fast/Last}

بسط پارامتر زیر جایگزین تمام رخدادهای رشته خواهد شد، “اولین“توسط رشته”آخر” از متغیر، $newsstr. جستجوی بدون حروف بزرگ برای این جایگزینی اعمال خواهد شد.

$ echo ${newstr//Fast/Last}

خروجی:

پیشنهاد می‌کنیم بخوانید:  چگونه پیکربندی tmux را سفارشی کنیم؟

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

بسط پارامتر Bashبسط پارامتر Bash

دستور زیر مقدار را اختصاص می دهد، “بخور تا زندگی کنی نه برای خوردن زندگی کن” به متغیر، رشته $.

$ رشته=“بخور تا زندگی کنی اما زندگی نکن تا بخوری”

کلمه، “خوردن” دو بار در متغیر ظاهر می شود، رشته $. دستور زیر جایگزین کلمه “بخور” توسط “کار کنید” که در ابتدای ظاهر می شود رشته $.

$ echo ${string/#Eat/Work}

دستور زیر جایگزین کلمه “خوردن” توسط “کار کردن” که در انتهای $string ظاهر می شود.

$ echo ${string/%eat/work}

خروجی:

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

بسط پارامتر Bashبسط پارامتر Bash

دستور زیر مقدار “ را ذخیره می کندزبان برنامه نویسی وب” به متغیر، $var.

$ var=“زبان برنامه نویسی وب”

بسط پارامتر زیر کلمه “” را حذف می کند.وب” از ابتدای متغیر، $var.

$ echo ${var/#Web}

بسط پارامتر زیر کلمه “” را حذف می کند.زبان” از انتهای متغیر، $var.

$ echo ${var/%Language}

خروجی:

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

بسط پارامتر Bashبسط پارامتر Bash

نتیجه:

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

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

زمان انتشار: 1402-12-31 18:04:05

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

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

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