cut是一个帮我们按文本切分的小工具,他可以指定分隔符的定界符,在cut术语中,每列都是一个字段
提取一个字段或列
[root@MIO-2 ~]# cut -f1 cut.txt 1111
同时提取多个字段或列
[root@MIO-2 ~]# cut -f2,3 cut.txt 2222 3333
—complement 可以排除设置之外的列
打印出除了第三列的所有列
[root@MIO-2 ~]# cut -f3 --complement cut.txt 1111 2222
-d 指定分隔符
[root@MIO-2 ~]# cut -f1 -d: /etc/shadow root bin daemon adm lp sync
cut命令有一些选项可以将一串字符做为列来显示
指定字段的字符或字节范围
假设我们不一览定界符,但需要通过将字段定义为一个字符范围(行首记为0)来进行字段提取,这种需求也可以用cut来实现
N- 从第N个字节,字符或字段到行尾
N-M 从第N个字节,字符或字段到第M个字节,字符或字段
-M 第一个字节,字符或字段到第M个字节,字符或字段
-b 表示字节
-c 表示字符
-f 表示定义字段
打印出每一行的第一个至第五个字符
[root@MIO-2 ~]# cut -c1-5 /etc/shadow root: bin:* daemo adm:*
-b使用字节做为计数单位
打印出每一行的1-6字节
[root@MIO-2 ~]# cut -b1-6 /etc/shadow root:$ bin:*: daemon
—output-delimiter 多列输出时 指定分隔符
[root@MIO-2 ~]# cut -b1-6,9-12 --output-delimiter === /etc/shadow root:$===Iiwj bin:*:===628: daemon===:156 adm:*:===628: