cut命令詳解

  

基礎命令學習目錄首頁html

 

原文連接:https://www.cnblogs.com/Spiro-K/p/6361646.htmlpost

cut學習

文件內容查看

顯示行中的指定部分,刪除文件中指定字段

顯示文件的內容,相似於下的type命令。

說明

  • 該命令有兩項功能,其一是用來顯示文件的內容,它依次讀取由參數file所指明的文件,將它們的內容輸出到標準輸出上;其二是鏈接兩個或多個文件,如cut fl f2 > f3將把文件fl和幾的內容合併起來,而後經過輸出重定向符「>」的做用,將它們放入文件f3中。
  • 當文件較大時,文本在屏幕上迅速閃過(滾屏),用戶每每看不清所顯示的內容。所以,通常用more等命令分屏顯示。

    爲了控制滾屏,能夠按Ctrl+S鍵,中止滾屏;按Ctrl+Q鍵能夠恢復滾屏。this

    按Ctrl+C(中斷鍵能夠終止該命令的執行,而且返回Shell提示符狀態。url

語法

 

cut(選項)(參數)spa

 

 

選項

複製代碼
-b:僅顯示行中指定直接範圍的內容;

-c:僅顯示行中指定範圍的字符;

-d:指定字段的分隔符,默認的字段分隔符爲「TAB」;

-f:顯示指定字段的內容;

-n:與「-b」選項連用,不分割多字節字符;

--complement:補足被選擇的字節、字符或字段;

--out-delimiter=<字段分隔符>:指定輸出內容是的字段分割符;

--help:顯示指令的幫助信息;

--version:顯示指令的版本信息。
複製代碼

 

參數code

 

文件:指定要進行內容過濾的文件。htm

 

 

實例

1.例若有一個學生報表信息,包含No、Name、Mark、Percent:blog

複製代碼
cat test.txt

No Name Mark Percent
01 tom 69 91
02 jack 71 87
03 alex 68 98
複製代碼

 

使用 -f 選項提取指定字段:get

複製代碼
cut -f 1 test.txt
結果:
No
01
02
03
複製代碼
複製代碼
cut -f2,3 test.txt
結果:
Name Mark
tom 69
jack 71
alex 68
複製代碼

 

--complement 選項提取指定字段以外的列(打印除了第二列以外的列):

複製代碼
cut -f2 --complement test.txt
結果:
No Mark Percent
01 69 91
02 71 87
03 68 98
複製代碼

 

2.使用 -d 選項指定字段分隔符:

複製代碼
cat test2.txt

No;Name;Mark;Percent
01;tom;69;91
02;jack;71;87
03;alex;68;98

cut -f2 -d";" test2.txt
結果:
Name
tom
jack
alex
複製代碼

 

3.指定字段的字符或者字節範圍

複製代碼
cut命令能夠將一串字符做爲列來顯示,字符字段的記法:

N-:從第N個字節、字符、字段到結尾;

N-M:從第N個字節、字符、字段到第M個(包括M在內)字節、字符、字段;

-M:從第1個字節、字符、字段到第M個(包括M在內)字節、字符、字段。

上面是記法,結合下面選項將摸個範圍的字節、字符指定爲字段:

-b 表示字節;

-c 表示字符;

-f 表示定義字段。
複製代碼

 

 例:

複製代碼
cat test.txt

abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
複製代碼

 

打印第1個到第3個字符:

 

複製代碼
cut -c1-3 test.txt
結果:
abc
abc
abc
abc
abc
複製代碼

 

打印前2個字符:

複製代碼
cut -c-2 test.txt
結果:
ab
ab
ab
ab
ab
複製代碼

 

打印從第5個字符開始到結尾:

複製代碼
cut -c5- test.txt
結果:
efghijklmnopqrstuvwxyz
efghijklmnopqrstuvwxyz
efghijklmnopqrstuvwxyz
efghijklmnopqrstuvwxyz
efghijklmnopqrstuvwxyz
相關文章
相關標籤/搜索