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

سرور مجازی NVMe

روش استخراج بخشی از یک رشته با استفاده از دستورات برش و تقسیم Bash

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


در حین برنامه نویسی، اغلب مواردی پیش می آید که نیاز داریم بخش خاصی از یک رشته را از یک متن بزرگتر استخراج کنیم. این کار را می توان با استفاده از تکنیک ها و ابزارهای مختلفی انجام داد و یکی از محبوب ترین روش ها استفاده از دستورات bash/cut/split در لینوکس/یونیکس است.

این دستورات قدرتمند و همه کاره هستند و می توان از آنها برای استخراج بخش های خاصی از یک رشته استفاده کرد روی جداکننده های مختلف مانند فاصله، کاما و نقطه ویرگول. این مقاله چگونگی استخراج بخش‌هایی از یک رشته را با استفاده از دستورات bash/cut/split و مثال‌های عملی ارائه می‌کند تا به شما در درک بهتر روش استفاده مؤثر از آنها کمک کند.

دستور برش

دستور cut برای استخراج بخش ها از هر خط یک فایل یا رشته استفاده می شود. این یک دستور ساده و قدرتمند است که می تواند فیلدها را بر اساس استخراج کند روی یک جداکننده یا یک شخصیت خاص. سینتکس دستور cut به صورت زیر است:

برش [delimiter] [field] [filename]

در اینجا گزینه -d جداکننده مورد استفاده در فایل ورودی را مشخص می کند و گزینه -f فیلدهای استخراج شده را مشخص می کند. آرگومان filename فایل ورودی است که باید پردازش شود. به عنوان مثال، فرض کنید فایلی به نام testfile.txt با محتوای زیر داریم:

BMW، M5

لکسوس، LS470

VOLVO,X70

اگر بخواهیم فیلد دوم را از هر خط استخراج کنیم، می توانیم از اسکریپت پوسته زیر استفاده کنیم:

#!/bin/bash

پیشنهاد می‌کنیم بخوانید:  اسکریپت Bash چیست؟

گربه testfile.txt

اکو “در اینجا قسمت استخراج شده است:”

برش “،” 2 testfile.txt

در زیر خروجی کد داده شده بالا است که فایل و قسمت استخراج شده آن را نمایش می دهد:

روش استخراج بخشی از یک رشته با استفاده از دستورات برش و تقسیم Bash

فرمان تقسیم

دستور split برای تقسیم یک رشته به آرایه ای از زیررشته ها استفاده می شود روی یک جداکننده این یک دستور داخلی در Bash است که می تواند برای استخراج بخشی از یک رشته استفاده شود. نحو دستور split به شرح زیر است:

IFS=[delimiter] خواندن -ra [array_name] <<< “$[string]”

در اینجا، متغیر IFS جداکننده مورد استفاده در رشته را مشخص می کند، دستور read ورودی را می خواند و آن را به یک آرایه تقسیم می کند و عملگر <<< برای ارسال رشته به عنوان ورودی استفاده می شود.

به عنوان مثال، فرض کنید ما یک رشته به نام “BMW, M5” داریم. اگر بخواهیم فیلد دوم را استخراج کنیم، می توانیم از اسکریپت bash زیر استفاده کنیم:

#!/bin/bash

گربه testfile.txt

اکو “در اینجا قسمت استخراج شده است:”

IFS=“،” خواندن -ra زمینه های <<< “BMW, M5”

اکو ${فیلدها[1]}

دستور تقسیم Bash همچنین می تواند برای استخراج چندین فیلد از یک رشته با استفاده از چندین متغیر در دستور خواندن استفاده شود.

روش استخراج بخشی از یک رشته با استفاده از دستورات برش و تقسیم Bashروش استخراج بخشی از یک رشته با استفاده از دستورات برش و تقسیم Bash

نتیجه

Bash چندین روش برای استخراج بخشی از یک رشته ارائه می دهد، از جمله دستورات برش و تقسیم. دستور cut را می توان برای استخراج فیلدها بر اساس استفاده کرد روی یک جداکننده یا یک کاراکتر خاص، در حالی که دستور split می تواند برای تقسیم یک رشته به آرایه ای از رشته های فرعی استفاده شود. روی یک جداکننده درک روش استخراج بخشی از یک رشته برای هر کسی که با اسکریپت های Bash کار می کند یک مهارت مهم است.

پیشنهاد می‌کنیم بخوانید:  طول رشته را در Bash پیدا کنید

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

زمان انتشار: 1402-12-28 21:46:03

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

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

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