از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش جایگزینی یک کاراکتر با شخصیت دیگر – Bash
سرفصلهای مطلب
روش جایگزینی یک کاراکتر با شخصیت دیگر در اسکریپت Bash
جایگزین کردن یک کاراکتر با کاراکتر دیگر یک کار رایج در Sash Scripting است و می تواند در بسیاری از سناریوهای مختلف مفید باشد. در اینجا سه راه آسان برای جایگزینی یک کاراکتر با شخصیت دیگر در اسکریپت Bash آمده است:
روش جایگزینی یک کاراکتر با دیگری با استفاده از دستور tr در Bash
دستور tr ابزاری ساده برای ترجمه، حذف یا فشردن کاراکترهای یک رشته است. می توان از آن برای جایگزینی یک کاراکتر با کاراکتر دیگر با تعیین کاراکترهای جایگزین و جایگزینی آنها استفاده کرد، در اینجا نحو استفاده از این دستور آمده است:
در اینجا برای توضیح اگر رشتهای را انتخاب کردهام که “Hello Linux” است و اگر بخواهم حرف L را با حرف بزرگ W جایگزین کنم، میتوان با استفاده از دستور tr این کار را انجام داد:
در اینجا کد bash کامل وجود دارد که روش استفاده از دستور tr را برای جایگزینی یک کاراکتر با کاراکتر دیگر نشان می دهد:
رشته_اصلی=“سلام لینوکس”
صادرات رشته_جدید=$(اکو “$Main_string“ | tr ‘L’ ‘w’)
اکو “رشته_اصلی:” $Main_string
اکو “رشته_تغییر شده:” $New_string
در اینجا خروجی اسکریپت Bash است، L با w جایگزین شده است:
روش جایگزینی یک کاراکتر با دیگری با استفاده از دستور sed در Bash
راه دیگر برای جایگزینی یک کاراکتر با کاراکتر دیگر در Bash استفاده از دستور sed است. دستور sed یک ویرایشگر جریان است که می تواند عملیات مختلفی را انجام دهد روی یک رشته، از جمله جایگزینی. در اینجا نحو استفاده از این دستور برای جایگزینی یک کاراکتر با کاراکتر دیگر آمده است:
در اینجا برای مثال، اگر رشتهای را انتخاب کرده باشم که “Hello Linux” است و بخواهم حرف کوچک “L” را با “w” جایگزین کنم، می توان با استفاده از دستور tr این کار را انجام داد:
در اینجا کد bash کامل وجود دارد که روش استفاده از دستور sed را برای جایگزینی یک کاراکتر با کاراکتر دیگر نشان می دهد:
رشته_اصلی=“سلام لینوکس”
رشته_جدید=$(اکو “$Main_string“ | sed ‘s/L/w/g’)
اکو “رشته_اصلی:” $Main_string
اکو “رشته_تغییر شده:” $New_string
در این مثال، ما از دستور echo برای خروجی رشته “hello Linux” استفاده می کنیم و سپس خروجی را به دستور sed لوله می کنیم. دستور sed از دستور جایگزینی (s) برای جایگزینی همه موارد حرف “L” با حرف “w” استفاده می کند. گزینه g در انتهای دستور به sed میگوید که همه رخدادهای کاراکتر در رشته را جایگزین کند، نه فقط اولین رخداد. خروجی این دستور “hello winux” خواهد بود:
روش جایگزینی یک کاراکتر با دیگری با استفاده از بسط پارامتر در Bash
راه دیگری برای جایگزینی یک کاراکتر با کاراکتر دیگری در bash، میتوانید با استفاده از یک بسط پارامتر و در اینجا مثالی وجود دارد که جایگزین «L» از رشته اصلی، کاراکتر جدید «w» خواهد شد:
رشته_اصلی=“سلام لینوکس”
رشته_جدید=“${Main_string//L/w}“
اکو “رشته_اصلی:” $Main_string
اکو “رشته_تغییر شده:” $New_string
در این مثال، ما از بسط پارامتر برای جایگزینی تمام رخدادهای حرف کوچک “h” با حرف “s” در متغیر Main_string استفاده می کنیم. خروجی این دستور “hello winux” خواهد بود:
نتیجه
راه های مختلفی برای جایگزینی یک کاراکتر با کاراکتر دیگر در Bash وجود دارد، از جمله استفاده از دستور tr، دستور sed و بسط پارامتر. هر روش مزایا و معایب خاص خود را دارد، بنابراین روشی را انتخاب کنید که برای مورد استفاده خاص شما بهترین کار را دارد زیرا این راهنما هر سه روش را برای انجام آن ارائه می دهد.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-29 04:39:04