首頁 > 文字處理與搜尋 > cut

cut 命令指南:從文件中提取特定欄位

`cut` 命令用於從文字檔案或透過管道傳輸的資料中,剪下(提取)特定欄位、位元組或字元。它主要用於從 CSV 檔案或日誌檔中提取或處理所需的數據,並且與 `awk` 或 `grep` 結合使用時,在構建數據處理管道中扮演重要角色。

cut 命令概述

`cut`,顧名思義,就像「剪下」一樣,它根據分隔符將文本數據的每一行切割成多個片段,然後選擇並輸出所需的片段。這個命令簡單快速,因此適用於不需要複雜模式匹配的簡單數據提取任務。

cut 的主要功能

  • 提取由特定分隔符分隔的欄位
  • 提取行的特定位元組範圍
  • 提取行的特定字元範圍
  • 可處理標準輸入和文件

主要選項

使用 `cut` 命令的核心選項可以精確地剪切數據。

1. 基於欄位的提取

2. 基於位元組和字元的提取

生成的命令:

請試著組合命令。

這個 Django 應用程序是一個技術指南文檔,旨在為用戶輕鬆解釋 Linux 的各種命令。

`cut` 執行命令。

請將上述選項組合在一起,與 AI 一同虛擬執行命令。

常用範例

透過 `cut` 命令的各種實用範例,學習如何提取數據。

從以空格分隔的檔案中提取特定欄位

cat /etc/passwd | cut -d: -f1

從 `passwd` 檔案中提取使用者名稱(第一個欄位)。如果未指定 `-d` 選項,預設會以 Tab 分隔,但 `passwd` 檔案使用 `:` 作為分隔符,因此必須指定 `: -f1`。

從 CSV 檔案中提取姓名和電子郵件

cut -d',' -f1,3 users.csv

從以逗號 (`,`) 分隔的 `users.csv` 檔案中提取姓名(第一個欄位)和電子郵件(第三個欄位)。

從檔案中提取特定字元範圍

cut -c1-5 data.txt

剪下 `data.txt` 檔案中每行的第一個字元到第五個字元。

結合管道提取 IP 位址

ifconfig eth0 | grep 'inet ' | cut -d: -f2 | cut -d' ' -f1

將 `ifconfig` 命令的結果透過管道傳遞給 `grep` 和 `cut`,以提取 IP 位址。(例如: `ifconfig | grep 'inet ' | cut -d ' ' -f2`)

排除特定欄位並輸出

cut -d: -f1,6 --complement /etc/passwd

輸出 `passwd` 檔案中除了使用者名稱(第1個欄位)和家目錄(第6個欄位)之外的所有其他資訊。


相關命令

功能上相似或經常一起使用的命令。


相同類別命令