Linux 的“cut” 命令


介紹

Linux 中的“cut”命令是一個強大的命令列實用程式,允許您從檔案或資料流中提取特定文字部分。無論您是處理製表符分隔的檔案、CSV 檔案,還是隻想提取特定範圍的字元,“cut”命令都是一個用途廣泛的工具,可以幫助您快速輕鬆地完成工作。在本文中,我們將討論cut命令的基本用法以及一些高階選項和使用示例。我們還將介紹cut命令的一些實際用例,以及如何將其與其他Linux命令結合使用以建立強大的文字處理指令碼。

cut 命令的基本用法

cut 命令的基本語法如下:

$ cut [options] [file]

選項指定資料提取的標準,檔案是從中要提取資料的檔名或資料流。

cut 命令的一個更常見的用途是從檔案中提取特定欄位或列。預設情況下,cut 命令使用製表符作為欄位之間的分隔符。例如,考慮以下名為“example.txt”的檔案:

John Doe, 35, Male
Jane Smith, 29, Female
Bob Johnson, 42, Male

要從該檔案中提取第一個欄位(姓名),請使用以下命令:

$ cut -f1 -d, example.txt
John Doe
Jane Smith
Bob Johnson

cut 命令的高階選項

cut 命令有幾個高階選項,允許您指定不同的分隔符、提取特定範圍的字元等等。一些最常用的選項是:

  • -f - 此選項用於指定要提取的欄位或列。您可以透過逗號分隔多個欄位來指定它們。

  • -d - 此選項用於指定檔案中欄位的分隔符。預設情況下,分隔符是製表符。

  • -b - 此選項用於指定要從檔案中提取的位元組範圍。

  • -c - 此選項用於指定要從檔案中提取的字元範圍。

cut 命令的示例

以下是一些如何使用這些選項使用cut 命令的示例:

  • 提取特定欄位

$ cut -f1,3 -d, example.txt
John Doe, Male
Jane Smith, Female
Bob Johnson, Male
  • 提取特定位元組

$ cut -b 3-8 example.txt
hn Do
ane Sm
b John
  • 提取特定字元

$ cut -c 3-8 example.txt
hn Do
ane Sm
b John

cut 命令在現實生活中的應用

cut 命令可以用許多不同的方式來處理文字檔案和資料流。以下是一些cut 命令如何在現實場景中使用的示例:

CSV 檔案中提取特定列:

$ cut -f1,3 -d, example.csv

日誌檔案中提取特定欄位:

$ cut -f1,4 -d" " logfile.txt

二進位制檔案中提取特定位元組:

$ cut -b 500-1000 binaryfile.bin

字串中提取特定字元:

$ echo "Hello World" | cut -c 3-8

製表符分隔檔案中提取特定欄位:

$ cut -f2-5 -d$'\t' tabfile.txt

將 cut 與其他命令結合使用

cut 命令還可以與其他 Linux 命令結合使用以建立強大的文字處理指令碼。例如,您可以使用cut 命令從檔案中提取特定欄位,然後將輸出透過管道傳遞給sort 命令以按字母順序排序欄位:

$ cut -f1 -d, example.txt | sort

您還可以使用cut 命令從檔案中提取特定欄位,然後將輸出透過管道傳遞給uniq 命令以刪除重複項:

$ cut -f1 -d, example.txt | sort | uniq

結論

cut 命令是 Linux 上一個強大的命令列實用程式,允許您從檔案或資料流中提取特定文字部分。透過本文中討論的不同選項和示例,您應該對如何在專案中使用cut 命令有一個很好的理解。無論您是處理製表符分隔的檔案、CSV 檔案,還是隻想提取特定範圍的字元,cut 命令都是一個用途廣泛的工具,可以幫助您快速輕鬆地完成工作。現實世界的用例以及與其他命令的結合將使您瞭解如何在日常工作中有效地使用此命令。

更新於:2023年2月13日

634 次瀏覽

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告