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

سرور مجازی NVMe

Bash تعریف رشته چند خطی متغیر

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


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

این راهنمای سریع روش های تعریف متغیرهای رشته ای چند خطی را با استفاده از کاراکترهای فرار و Heredoc به شما نشان می دهد.

شخصیت های فرار Bash

Bash، مانند بسیاری از زبان های برنامه نویسی، امکان استفاده از کاراکترهای فرار را فراهم می کند. کاراکترهای فرار به ما این امکان را می دهند که تفسیر جدیدی از توالی شخصیت ها را فراخوانی کنیم. اگرچه Bash کاراکترهای فرار مختلفی دارد، اما ما فقط باید به \n (کاراکتر خط جدید) توجه کنیم.

برای مثال، اگر یک رشته چند خطی در یک اسکریپت داشته باشیم، می‌توانیم از کاراکتر \n برای ایجاد یک خط جدید در صورت لزوم استفاده کنیم.

نمونه ای از چنین موارد استفاده:

#!/صندوقچه/bash
خ= “این یک رشته است\n-و یکی دیگر\n-و یکی دیگر\n-و آخرین”
echo -e $str

اجرای اسکریپت بالا رشته ها را در یک خط جدید که در آن کاراکتر \n وجود دارد چاپ می کند.

Bash تعریف رشته چند خطی متغیر

HereDoc

روش فوق برای متن خط ساده به خوبی کار می کند. با این حال، اگر ما نیاز داشته باشیم print متنی با سایر کاراکترهای خاص، واکنش‌های متقابل و نقل قول‌ها، به‌طور غیر ضروری پیچیده می‌شود. برای حل چنین مشکلی می توانیم از HereDoc استفاده کنیم.

پیشنهاد می‌کنیم بخوانید:  روش صادرات یک مسیر در .Bashrc

هردوک چیست؟

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

نحو هردوک در Bash این است:

فرمان << DELIMITER … بلوک هردوک … … حائل، جداکننده

جداکننده ها در هردوک می توانند هر رشته ای باشند. با این حال، رایج ترین رشته ها EOF، EOM یا END هستند.

هنگامی که پوسته با جداکننده روبرو می شود، همه متغیرها، دستورات و کاراکترهای خاص را جایگزین می کند و سپس اطلاعات داخل بلوک Heredoc را به دستور اصلی می دهد.

می توانید کاراکترهای خاص، رشته های معمولی، متغیرها و سایر دستورات پوسته را در بلوک Heredoc قرار دهید.

اطمینان حاصل کنید که بلوک Heredoc را با جداکننده خاتمه دهید. هیچ فضای خالی قبل از جداکننده اضافه نکنید.

رشته چند خطی با استفاده از Heredoc

فرض کنید رشته زیر را دارید:

<html زبان=“en”>

<سر>

<متا مجموعه شخصیت=“UTF-8”>

<متا http-equiv=“X-UA-Compatible” محتوا=“IE=edge”>

<متا نام=“نمایشگاه” محتوا=“width=device-width, first-scale=1.0”>

<عنوان>سند</عنوان>

</سر>

<بدن>

</بدن>

</html>

داخل a bash اسکریپت، می‌توانیم یک متغیر ایجاد کنیم و رشته بالا را مانند شکل زیر به cat پاس کنیم:

#!/صندوقچه/bash

رشته=$(گربه << EOF

<سر>

سند

<بدن>

EOF

)

echo رشته $

پس از اجرای اسکریپت بالا، خروجی زیر را مشاهده خواهید کرد:

Bash تعریف رشته چند خطی متغیرBash تعریف رشته چند خطی متغیر

همانطور که می بینید، ما می توانیم print کل رشته، از جمله تمام کاراکترهای خاص.

نتیجه

برای این راهنما، روش تعریف و استفاده از یک رشته چند خطی در a را مورد بحث قرار دادیم bash اسکریپت با این حال، هردوک بیش از آنچه در اینجا بحث شده است، وجود دارد. برای کسب اطلاعات بیشتر به منبع زیر توجه کنید.

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

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

زمان انتشار: 1402-12-30 21:08:03

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

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

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