linux命令之cut

1.cut介绍

linux命令cut用来从文本文件或者标准输入提取文本列

2.cut用法

cut [参数] [提取范围] 文本文件

cut常用参数

参数

说明

-c

从指定提取范围中提取字符

-f

从指定提取范围中提取字符段

-d

指定分隔符

提取范围:

n:第n项

n-:第n项到行尾

-m:行首到第m项

n,m:第n项和第m项(单个的)

n-m:第n项到第m项(连续的)

3.实例

3.1.提取12345678的第5个字符

命令:

echo 12345678 | cut -c 5

备注:cut下标默认从1开始

[root@centos79-3 ~]# echo 12345678 | cut -c 5
5
[root@centos79-3 ~]#

3.2.提取12345678的第2,4,6个字符

命令:

echo 12345678 | cut -c 2,4,6

[root@centos79-3 ~]# echo 12345678 | cut -c 2,4,6
246
[root@centos79-3 ~]#

3.3.提取12345678的第2个字符到结尾

命令:

echo 12345678 | cut -c 2-

[root@centos79-3 ~]# echo 12345678 | cut -c 2-
2345678
[root@centos79-3 ~]#

3.4.提取12345678的行首到第4个字符

命令:

echo 12345678 | cut -c -4

[root@centos79-3 ~]# echo 12345678 | cut -c -4
1234
[root@centos79-3 ~]#

3.5.提取12345678的第2到第5个字符

命令:

echo 12345678 | cut -c 2-5

[root@centos79-3 ~]# echo 12345678 | cut -c 2-5
2345
[root@centos79-3 ~]#

3.6.以冒号(:)为分隔符,提取/etc/passwd文件中第1、3个字段

命令:

cat /etc/passwd | cut -d : -f 1,3
 

[root@centos79-3 ~]# cat /etc/passwd | cut -d : -f 1,3
root:0
bin:1
daemon:2
adm:3
lp:4
sync:5
shutdown:6
halt:7
mail:8
operator:11
games:12
ftp:14
nobody:99
systemd-network:192
dbus:81
polkitd:999
sshd:74
postfix:89
ztj:1000
[root@centos79-3 ~]#