فهرست سرفصل‌های Bash
خانه (Home) مقدمه (Intro) شروع به کار (Get Started) فرمان ها (Commands) فهرست فایل ها (List (ls)) تغییر پوشه (Change Dir (cd)) نمایش مسیر (Print Dir (pwd)) چاپ متن (Echo (echo)) ادغام فایل ها (Concatenate (cat)) کپی کردن (Copy (cp)) جابه جایی (Move (mv)) حذف (Remove (rm)) ساخت/به روزرسانی زمان (Timestamp (touch)) ساخت پوشه (Make Dir (mkdir)) راهنما (Manual (man)) نام مستعار (Alias) جستجوی متن (Search Text (grep)) اسکن الگو (Pattern Scan (awk)) ویرایشگر جریان (Stream Editor (sed)) برش بخش ها (Remove Section (cut)) مرتب سازی خطوط (Sort Lines (sort)) نمایش انتها (View End (tail)) نمایش ابتدا (View Start (head)) وضعیت فرایندها (Process Status (ps)) فهرست فرایندها (List Processes (top)) فضای دیسک (Disk Space (df)) مصرف پوشه ها (Directory Usage (du)) مصرف حافظه (Memory Usage (free)) پایان دادن (Terminate (kill)) زمان روشن بودن (Uptime) پینگ (Ping) انتقال URL (URL Transfer (curl)) دانلودکننده (Downloader (wget)) اتصال راه دور (Remote Connect (ssh)) کپی امن (Secure Copy (scp)) همگام سازی فایل ها (File Sync (rsync)) فشرده سازی (Compress (zip)) استخراج (Extract (unzip)) بایگانی TAR (TAR Archive) مالکیت (Ownership) تغییر مجوزها (Modify (chmod)) تغییر مالکیت (Ownership (chown)) تغییر گروه (Group (chgrp)) سینتکس (Syntax) اسکریپت (Script) متغیرها (Variables) انواع داده (Data Types) عملگرها (Operators) اگر…وگرنه (If...Else) حلقه ها (Loops) توابع (Functions) آرایه ها (Arrays) زمان بندی (Schedule (cron)) تمارین (Exercises) آزمون (Quiz) گواهینامه (Certificate)
نتیجه‌ای برای جستجو یافت نشد.
مستندات زبان Bash

Bash — برش بخش ها (Remove Section (cut))

آخرین بروزرسانی: 1404/08/17

برش بخش ها (Remove Section (cut))

می خواهی از هر خط فقط بخش های خاصی را ببینی؟ دستور «cut» برای برش بخش هاست. «بخش (Field)» یعنی قسمت های جداشده با جداکننده. مثل اسم و سن در یک فایل.

آشنایی سریع با cut

cut از هر خط فایل، فیلدهای انتخابی را جدا می کند. مثال ها از فایل example_data.txt استفاده می کنند.

Kai \tRefsnes\t30,Norway
Robin\tSmith\t25,Denmark
Sienna\tDavis\t40,Germany

مشاهده در ادیتور

استفاده پایه

برای گرفتن فیلد اول، از -f1 استفاده کن. پیش فرض جداکننده تب است.

cut -f1 example_data.txt
Kai
Robin
Sienna

مشاهده در ادیتور

گزینه های مهم

  • -d: تعیین جداکننده فیلدها.
  • -f: انتخاب شماره فیلدها.
  • --complement: نمایش همه فیلدها بجز انتخاب شده ها.

تعیین جداکننده با -d

اگر فیلدها با کاما جدا شده اند، جداکننده را کاما بده.

cut -d',' -f1 example_data.txt
Kai\tRefsnes\t30
Robin\tSmith\t25
Sienna\tDavis\t40

مشاهده در ادیتور

انتخاب چند فیلد با -f

می توانی بازه فیلد بدهی. اینجا فیلدهای 1 تا 2 می آید.

cut -f1-2 example_data.txt
Kai\tRefsnes
Robin\tSmith
Sienna\tDavis

مشاهده در ادیتور

نمایش مکمل با --complement

با این گزینه، همه فیلدها جز انتخاب شده ها چاپ می شوند.

cut --complement -f1 example_data.txt
Refsnes 30,Norway
Smith 25,Denmark
Davis 40,Germany

مشاهده در ادیتور

استخراج پیشرفته فیلد

می توانی بازه فیلدهای میانی را هم بگیری. اینجا فیلدهای 2 تا 3 آورده می شوند.

cut -f2-3 example_data.txt
Refsnes 30,Norway
Smith 25,Denmark
Davis 40,Germany

مشاهده در ادیتور

اشتباهات رایج و رفع ایراد

هشدار: جداکننده باید یک کاراکتر باشد. شماره گذاری فیلد از 1 شروع می شود. اگر خروجی اشتباه بود، جداکننده و شماره فیلدها را دوباره چک کن.

تمرین گام به گام

  1. یک فایل متنی مانند مثال بساز.
  2. با -f1 فقط نام ها را چاپ کن.
  3. جداکننده را با -d',' تغییر بده.
  4. با -f1-2 دو فیلد اول را بگیر.
  5. با --complement بقیه فیلدها را ببین.

بعد از cut، بخش ویرایشگر جریان (sed) را ببین. همچنین مرتب سازی (sort) برای نظم دادن خروجی ها عالی است.

جمع بندی سریع

  • cut فیلدها را جدا و چاپ می کند.
  • پیش فرض جداکننده تب است.
  • -d جداکننده را تغییر می دهد.
  • -f فیلدها را انتخاب می کند.
  • --complement بقیه فیلدها را نشان می دهد.