درسنامه ۲-۵: برش متن با cut
cut برای جداکردن ستونها یا کاراکترهای خاص از هر خط استفاده میشود.
بر اساس جداکننده (delimiter)
# فرض: فایل CSV با جداکنندهٔ کاما
cut -d, -f1 names.csv # ستون اول
cut -d, -f1,3 data.csv # ستونهای 1 و 3
cut -d: -f1 /etc/passwd # نام کاربریها
بر اساس موقعیت کاراکتر
نکته: اگر فاصلهها نامنظماند، ابتدا فاصلههای پیاپی را یکتایی کنید:
تمرین کوتاه
- از یک فایل نمونه، ستونهای دلخواه را استخراج کنید.
- نام کاربریها را از
/etc/passwdبیرون بکشید و در فایلی ذخیره کنید.
نکات و مثالهای بیشتر
- نادیدهگرفتن خطهای خالی قبل از برش:
- برش بازهها و چند ستون ترکیبی:
- وقتی جداکننده تب است:
خطاهای رایج
- استفاده از
cut -d ' 'روی متنهایی با فاصلههای نامنظم؛ ابتدا فاصلهها را یکدست کنید (tr -s ' '). - فراموشی نقلقول در جداکنندههایی با کاراکترهای خاص شل.