Linux cut命令

Linux cut命令主要用于根据字段提取文件内容。文本文件没有像数据库那样的行/列,有时我们只需要单列数据。根据分隔符剪切已识别的列(例如:冒号’:’,分号’;’,逗号’,’等),下面为大家分享一下Linux系统 cut命令具体使用方法。

5c91ea370a111892

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

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你!

137e00002230ad9f26e78-265x300

本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部