از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش استخراج بخشی از یک رشته با استفاده از دستورات برش و تقسیم Bash
سرفصلهای مطلب
این دستورات قدرتمند و همه کاره هستند و می توان از آنها برای استخراج بخش های خاصی از یک رشته استفاده کرد روی جداکننده های مختلف مانند فاصله، کاما و نقطه ویرگول. این مقاله چگونگی استخراج بخشهایی از یک رشته را با استفاده از دستورات bash/cut/split و مثالهای عملی ارائه میکند تا به شما در درک بهتر روش استفاده مؤثر از آنها کمک کند.
دستور برش
دستور cut برای استخراج بخش ها از هر خط یک فایل یا رشته استفاده می شود. این یک دستور ساده و قدرتمند است که می تواند فیلدها را بر اساس استخراج کند روی یک جداکننده یا یک شخصیت خاص. سینتکس دستور cut به صورت زیر است:
در اینجا گزینه -d جداکننده مورد استفاده در فایل ورودی را مشخص می کند و گزینه -f فیلدهای استخراج شده را مشخص می کند. آرگومان filename فایل ورودی است که باید پردازش شود. به عنوان مثال، فرض کنید فایلی به نام testfile.txt با محتوای زیر داریم:
لکسوس، LS470
VOLVO,X70
اگر بخواهیم فیلد دوم را از هر خط استخراج کنیم، می توانیم از اسکریپت پوسته زیر استفاده کنیم:
گربه testfile.txt
اکو “در اینجا قسمت استخراج شده است:”
برش -د “،” -ف 2 testfile.txt
در زیر خروجی کد داده شده بالا است که فایل و قسمت استخراج شده آن را نمایش می دهد:
فرمان تقسیم
دستور split برای تقسیم یک رشته به آرایه ای از زیررشته ها استفاده می شود روی یک جداکننده این یک دستور داخلی در Bash است که می تواند برای استخراج بخشی از یک رشته استفاده شود. نحو دستور split به شرح زیر است:
در اینجا، متغیر IFS جداکننده مورد استفاده در رشته را مشخص می کند، دستور read ورودی را می خواند و آن را به یک آرایه تقسیم می کند و عملگر <<< برای ارسال رشته به عنوان ورودی استفاده می شود.
به عنوان مثال، فرض کنید ما یک رشته به نام “BMW, M5” داریم. اگر بخواهیم فیلد دوم را استخراج کنیم، می توانیم از اسکریپت bash زیر استفاده کنیم:
گربه testfile.txt
اکو “در اینجا قسمت استخراج شده است:”
IFS=“،” خواندن -ra زمینه های <<< “BMW, M5”
اکو ${فیلدها[1]}
دستور تقسیم Bash همچنین می تواند برای استخراج چندین فیلد از یک رشته با استفاده از چندین متغیر در دستور خواندن استفاده شود.
نتیجه
Bash چندین روش برای استخراج بخشی از یک رشته ارائه می دهد، از جمله دستورات برش و تقسیم. دستور cut را می توان برای استخراج فیلدها بر اساس استفاده کرد روی یک جداکننده یا یک کاراکتر خاص، در حالی که دستور split می تواند برای تقسیم یک رشته به آرایه ای از رشته های فرعی استفاده شود. روی یک جداکننده درک روش استخراج بخشی از یک رشته برای هر کسی که با اسکریپت های Bash کار می کند یک مهارت مهم است.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-28 21:46:03