暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

shell 基础:cut 按列切分文件

原创 Steven 云和恩墨 2022-04-04
2607

cut命令可以按列,而不是按行来切分文件。该命令可用于处理使用固定宽度字段的文件、 CSV文件或是由空格分隔的文件(例如标准日志文件)

实战演练

cut命令能够提取指定位置或列之间的字符。你可以指定每列的分隔符。在cut的术语中, 每列被称为一个字段。

(1) 选项-f可以指定要提取的字段:

cut -f FIELD_LIST filename  FIELD_LIST是需要显示的列。它由列号组成,彼此之间用逗号分隔。

$ cut -f 2,3 filename

该命令将显示第2列和第3列。

(2) cut命令也能够从stdin中读取输入。

制表符是字段默认的分隔符。对于没有使用分隔符的行,会将该行照原样打印出来。cut 的选项-s可以禁止打印出这种行。下面的例子演示了如何从使用制表符作为分隔符的文 件中提取列:    


(3) 要想提取多个字段,就得给出由逗号分隔的多个字段编号:

$ cut -f2,4 student_data.txt Name Percent Sarath 90 Alex 98 Anu 90

(4) 我们也可以用 --complement选项显示出没有被-f指定的那些字段。下面的命令会打印 出除第3列之外的所有列:


(5) 选项-d能够设置分隔符。下面的命令展示了如何使用cut处理由分号分隔的字段:


cut命令还有其他一些选项可以指定要显示的列

固定列宽的报表在列与列之间都存在数量不等的空格①。你没法根据字段的位置来提取值, 但是可以根据字符位置提取。cut命令可以根据字节或者字符来指定选择范围。


















「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论