cut 命令可以从一个文本文件或者文本流中提取文本列 。
命令用法 :
cut -b list [-n] [file ...]
cut -c list [file ...]
cut -f list [-d delim][-s][file ...]
b,c,f分别表示字节,字符,字段(byte,character,field)
-n 常常表示具体数字。
list表示操作范围,如
N:只截取第n项
N-:截取第N项一直到行尾
N-M:第N项到第M项(包括M)
-M:第一项到第M项(包括M)
-:所有项
file表示要操作的文本文件
delim (英文全写:delimiter )表示分隔符,默认情况下为TAB
-s 表示不包括那些不含分隔符的行(这样有利于去掉注释和标题)
示例:
head -15 /etc/passwd | cut -c1-10
/etc/passwd文件前15行,每行的第1-10个字符
上例如果使用cut -b1-10,则是指取每行的第1到10个字节
如果是cut -f1-10,则是指取每行的第1到10个字段
可以指定多个范围,如-c1-2,5-8,9,20- 之类
head -15 /etc/passwd | cut -f1 -d':'
/etc/passwd 以:为分隔符,取第一个字段
使用-d':'指定字段分隔符,默认的分隔符是tab
-s 表示不包括那些不含分隔符的行(这样有利于去掉注释和标题)
--output-delimiter='/'指定结果用什么分隔符分隔,默认采用原来的分隔符