Linux中使用cut命令來提取文本的用法指南
有時我們經(jīng)常會遇到這樣一些問題:有一頁電話號碼薄,上面按順序規(guī)則地寫著人名、家庭住址、電話、備注等,此時我們只想取出所有人的名字和其對應(yīng)的電話號碼,你有幾種方法可以實現(xiàn)呢?
確實這種縱向定位的方式用常規(guī)辦法難以實現(xiàn),這時,cut就可以大顯身手了。
What’s cut?
子曰:cut命令可以從一個文本文件或者文本流中提取文本列。
命令用法:
cut -b list [-n] [file ...]
cut -c list [file ...]
cut -f list [-d delim][-s][file ...]
參數(shù):
-b, --bytes=LIST
輸出 這些 字節(jié)
-c, --characters=LIST
輸出 這些 字符
-d, --delimiter=DELIM
使用 DELIM 取代 TAB 做 字段(field) 分隔符
-f, --fields=LIST
輸出 這些 字段
-n
(忽略)
-s, --only-delimited
不顯示 沒有 分隔符 的 行
--output-delimiter=STRING
使用 STRING 作為 輸出分隔符, 缺省 (的 輸出分隔符) 為 輸入分隔符
--help
顯示 幫助信息, 然后 結(jié)束
--version
顯示 版本信息, 然后 結(jié)束
使用 且 只使用 -b, -c 或 -f 中的 一個 選項. LIST 由 一個 范圍 (range) 或 逗號 隔開的 多個 范圍 組成. 范圍 是 下列 形式 之一:
N
第 N 個 字節(jié), 字符 或 字段, 從 1 計數(shù) 起
N-
從 第 N 個 字節(jié), 字符 或 字段 直至 行尾
N-M
從 第 N 到 第 M (并包括 第M) 個 字節(jié), 字符 或 字段
-M
從 第 1 到 第 M (并包括 第M) 個 字節(jié), 字符 或 字段
如果 沒有 指定 文件 FILE, 或 FILE 是 -, 就從 標(biāo)準(zhǔn)輸入 讀取 數(shù)據(jù).
示例:
[root@localhost ~]# cat /etc/passwd | cut -b 1 |head -5#輸出文件的第一個字節(jié)
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 affffdddd fefsc
rrr f adfa eer ddd
# cat a.txt |cut -f1,3 -d $'\t'#1,3列
ssss dddd
rrr adfa
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。