歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux中使用cut命令來提取文本的用法指南

 有時我們經常會遇到這樣一些問題:有一頁電話號碼薄,上面按順序規則地寫著人名、家庭住址、電話、備注等,此時我們只想取出所有人的名字和其對應的電話號碼,你有幾種方法可以實現呢?

  確實這種縱向定位的方式用常規辦法難以實現,這時,cut就可以大顯身手了。

  What’s cut?

  子曰:cut命令可以從一個文本文件或者文本流中提取文本列。

  命令用法:

  cut -b list [-n] [file ...]

  cut -c list [file ...]

  cut -f list [-d delim][-s][file ...]

  參數:

  -b, --bytes=LIST

  輸出 這些 字節

  -c, --characters=LIST

  輸出 這些 字符

  -d, --delimiter=DELIM

  使用 DELIM 取代 TAB 做 字段(field) 分隔符

  -f, --fields=LIST

  輸出 這些 字段

  -n

  (忽略)

  -s, --only-delimited

  不顯示 沒有 分隔符 的 行

  --output-delimiter=STRING

  使用 STRING 作為 輸出分隔符, 缺省 (的 輸出分隔符) 為 輸入分隔符

  --help

  顯示 幫助信息, 然後 結束

  --version

  顯示 版本信息, 然後 結束

  使用 且 只使用 -b, -c 或 -f 中的 一個 選項. LIST 由 一個 范圍 (range) 或 逗號 隔開的 多個 范圍 組成. 范圍 是 下列 形式 之一:

  N

  第 N 個 字節, 字符 或 字段, 從 1 計數 起

  N-

  從 第 N 個 字節, 字符 或 字段 直至 行尾

  N-M

  從 第 N 到 第 M (並包括 第M) 個 字節, 字符 或 字段

  -M

  從 第 1 到 第 M (並包括 第M) 個 字節, 字符 或 字段

  如果 沒有 指定 文件 FILE, 或 FILE 是 -, 就從 標准輸入 讀取 數據.

  示例:

  代碼如下:

  [root@localhost ~]# cat /etc/passwd | cut -b 1 |head -5 #輸出文件的第一個字節

  r

  b

  d

  a

  l

  代碼如下:

  [root@localhost ~]# cat /etc/passwd | cut -c 1-4 |head -5 #輸出文件的前四個字符

  root

  bin:

  daem

  adm:

  lp:x

  代碼如下:

  [root@localhost ~]# cat /etc/passwd | cut -f1 -d ':' |head -5 #以:分割文件,輸出第一個字段

  root

  bin

  daemon

  adm

  lp

  代碼如下:

  # cat a.txt

  ssss affff dddd fe fsc

  rrr f adfa eer ddd

  代碼如下:

  # cat a.txt |cut -f1,3 -d $'\t' #1,3列

  ssss dddd

  rrr adfa

Copyright © Linux教程網 All Rights Reserved