智传网优云课堂,专注分享IT技术
与IT技术爱好者一起共同学习进步

cut命令详解

1. 了解cut命令作用

cut用于摘取输出内容,支持以字节、字符、分割符为单位。
查看Linux系统当前目录文件

先建立一个文本文件,内容如下:

[root@zcwyou ~]# cat cut.txt

1 abc 1a2b zcwyou
2 efgh 18ak 2b
33 igk 91zk4 814

了解cut命令作用

2. 以字节为单位

选项-b
例子1:只显示每行第一个字节

[root@zcwyou ~]# cut -b 1 cut.txt

输出结果:
1
2
3

例子2:选字例
从左到右,选第2,3,4个字节

[root@zcwyou ~]# cut cut.txt -b 2,3,4

ab
ef
3 i

从左到右,选第2-5个字节

[root@zcwyou ~]# cut cut.txt -b 2-5

abc
efg
3 ig

从左到右,选第4个字节及之前的

[root@zcwyou ~]# cut cut.txt -b -4

1 ab
2 ef
33 i

从左到右,选第5个字节及之后的

[root@zcwyou ~]# cut cut.txt -b 5-

c 1a2b zcwyou
gh 18ak 2b
gk 91zk4 814

3. 以分隔符显示

选项-d 分隔符,默认为制表符。 跟-f配合,-f 指定区域。适用于对不齐的列。比如/etc/passwd这样的文本。
例子:以空格为分隔符(\后跟一个空格,\表示转义),显示第1段

[root@zcwyou ~]# cut -d \  -f 1 cut.txt

1
2
33

注意的是,\与-f之间有两个空格,第一个空格表示分隔符,第二个空格表示命令选项之间的隔离。

只显示/etc/passwd的第1列,查看系统中已有的用户,使用:作为分隔符

[root@zcwyou ~]# cut -d : -f 1 /etc/passwd

以分隔符显示文本内容

4. -n选项配合-b一起使用

-n :不分割多字节字符。仅和 -b 标志一起使用。不够字节的字符,不显示。比如3个字节一个汉字,摘取3个字节一个汉字,摘取5字节也是一个汉字,摘取6字节才是两个汉字。

先建立一个中文文本,用vi建立,复制进去保存。

[root@zcwyou ~]# cat cut2.txt

我是小猪佩奇
我是佩奇爸爸
我是佩奇妈妈

先建立一个中文文本

分别试试显示第1字节,第1-2字节,第1-3字节。你会发现,在Linux默认编码中,汉字占3个字节。

[root@zcwyou ~]# cut cut2.txt -b -1

没有看到有内容输出

[root@zcwyou ~]# cut cut2.txt -b -2

没有看到有内容输出

[root@zcwyou ~]# cut cut2.txt -b -3



使用cut命令过滤显示内容

那么2个汉字应该是6字节,试试显示前面2个汉字

[root@zcwyou ~]# cut cut2.txt -b -6

我是
我是
我是

linux cut命令显示前面2个汉字

试试使用-n选项配合-b一起使用,它表示字符

[root@zcwyou ~]# cut cut2.txt -nb 1



linux cut命令显示每行第一个字符

[root@zcwyou ~]# cut cut2.txt -nb 2



[root@zcwyou ~]# cut cut2.txt -nb 3



显示前面2个汉字

[root@zcwyou ~]# cut cut2.txt -nb -2

我是
我是
我是

5. 以字符为单位

选项-c

[root@zcwyou ~]# cut cut2.txt -c -4

我是小猪
我是佩奇
我是佩奇

linux cut命令以字符为单位

赞(1)
未经允许不得转载:Linux入门学习到精通 » cut命令详解
分享到: 更多 (0)

学习QQ群:557371664

关注微信公众号自助视频学习

评论 抢沙发

评论前必须登录!