在linux系统中,数据处理是非常常见的任务。而cut命令作为linux命令行中的一个神器,可以通过简单的命令帮助管理员快速地进行数据提取和处理,大大提高工作效率。本文将介绍cut命令的使用方法,并通过生动的示例图解来帮助大家更好地理解

Linux命令神器——Cut,让数据处理更高效

cut命令的选项

Cut基本语法:

cut OPTION... [FILE]...

登录后复制

选项:

  • -f : 通过指定哪一个字段进行提取。cut命令使用“TAB”作为默认的字段分隔符。
  • -d : “TAB”是默认的分隔符,使用此选项可以更改为其他的分隔符。
  • –complement : 此选项用于排除所指定的字段。
  • –output-delimiter : 更改输出内容的分隔符。

如何分割

cut最常用的选项是-d和-f的组合。它基本上会根据特定的分隔符和列出的字段提取内容。

下面的代码仅使用分隔符:打印/etc/passwd文件中每一行的第一个字段。

[root@localhost ~]# cut -d ':' -f 1 /etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
…

登录后复制

下面的代码从/etc/passwd文件提取第一和第六个字段:

[root@localhost ~]# grep '/bin/bash' /etc/passwd| cut -d ':' -f 1,6
root:/root
bob:/home/bob
user01:/home/user01

登录后复制

要显示字段的范围,请指定以-分隔的开始字段和结束字段,如下所示:

[root@localhost ~]# grep '/bin/bash' /etc/passwd|cut -d ':' -f 1-4,6,7
root:x:0:0:/root:/bin/bash
bob:x:1000:1001:/home/bob:/bin/bash
user01:x:1001:1002:/home/user01:/bin/bash

登录后复制

排除所指定的字段

在下面的代码中,打印所有字段,除了/etc/passwd文件中的第二个字段:

[root@localhost ~]# grep '/bin/bash' /etc/passwd|cut -d ':' --complement -f 2
root:0:0:root:/root:/bin/bash
bob:1000:1001::/home/bob:/bin/bash
user01:1001:1002::/home/user01:/bin/bash

登录后复制

如何指定一个输出内容的分隔符

要指定输出分隔符,请使用–output-delimiter选项。输入分隔符由-d选项指定,默认情况下输出分隔符与输入分隔符相同。
先看一下没有使用–output-delimiter选项,是什么样子的:

[root@localhost ~]# cut -d ':' -f1,7 /etc/passwd|sort
adm:/sbin/nologin
avahi:/sbin/nologin
bin:/sbin/nologin
bob:/bin/bash
chrony:/sbin/nologin
daemon:/sbin/nologin
dbus:/sbin/nologin
ftp:/sbin/nologin
games:/sbin/nologin
grafana:/sbin/nologin
halt:/sbin/halt
lp:/sbin/nologin
mail:/sbin/nologin
nfsnobody:/sbin/nologin
nobody:/sbin/nologin
ntp:/sbin/nologin
operator:/sbin/nologin
…

登录后复制

现在使用–output-delimiter选项,输出分隔符使用’ ‘空格分隔,看一下是什么样子的:

[root@localhost ~]# cut -d ':' -f1,7 --output-delimiter=' ' /etc/passwd|sort
adm /sbin/nologin
avahi /sbin/nologin
bin /sbin/nologin
bob /bin/bash
chrony /sbin/nologin
daemon /sbin/nologin
dbus /sbin/nologin
ftp /sbin/nologin
games /sbin/nologin
grafana /sbin/nologin
halt /sbin/halt
lp /sbin/nologin
mail /sbin/nologin
nfsnobody /sbin/nologin
nobody /sbin/nologin
ntp /sbin/nologin
operator /sbin/nologin

登录后复制

总结

Cut命令虽然看似简单,但其实具备了很强的功能和灵活性。管理员可以通过设置不同的分隔符和域属性,精确地定位到需要的数据,并进行加工处理。本文为大家详细介绍了Cut命令的使用方法,相信读者已经掌握了这个神器的威力。Cut命令的高效与易学让我们从此不再畏惧数据处理这项任务。

以上就是Linux命令神器——Cut,让数据处理更高效的详细内容,更多请关注小闻网其它相关文章!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。