cut 查看文件部分内容

作用

cut 命令用来显示文件的部分内容,用户可以灵活指定查看的内容范围。

语法

cut [参数] [目标文件] [>|>>新的文件名]

参数

  • -b<n1-n2> 或者 -byte=<n1-n2>    选择每行中第 n1 ~ n2 个字节的内容

  • -c<n1-n2> 或者 -characters=<n1-n2>    选择每行中第 n1 ~ n2 个字符的内容

  • -f<n1-n2> 或者 -field=<n1-n2>    选择每行中第 n1 ~ n2 字段的内容,每个字段默认以 TAB 符号分割

  • -a 和 -b    一起使用,不分割多字节的字符,例如:汉字

  • -d<字段分隔符> 或 --delimiter=<字段分隔符>    如果以段为单位提取每行内容时,系统缺省以Tab符号作为分隔符,用户使用该参数可以自定义分割符号。比如系统文件的 /etc/passwd 中的每个字段都以“:”字符分割

示例

假如我们在当前目录下面存在一个 demo.txt 文本文件,该文件拥有如下内容:

[hxstrive@localhost ~]$ cat demo.txt 
id,name,age
100,zhangsan,20
200,lisi,22
300,zhaoliu,31
400,wanger,28

该文件将在后续的示例中使用。

(1)使用 cut 命令查看 demo.txt 文件每行开始的3个字节,如下:

[hxstrive@localhost ~]$ cut -b1-3 demo.txt
id,
100
200
300
400

(2)使用 cut 命令查看 demo.txt 文件每行开始的3个字符,如下:

[hxstrive@localhost ~]$ cut -c1-3 demo.txt
id,
100
200
300
400

(3)使用 cut 命令的 -d 参数自定义字段分隔符为“,”,然后返回每行前2个字段的值,如下:

[hxstrive@localhost ~]$ cut -d ',' -f1-2 demo.txt
id,name
100,zhangsan
200,lisi
300,zhaoliu
400,wanger

如果我们在 -f 参数后面只指定一个数字,则返回该数字对应的字段,如下:

[hxstrive@localhost ~]$ cut -d ',' -f2 demo.txt
name
zhangsan
lisi
zhaoliu
wanger

如果指定格式为 -f-n,则返回1~n字段的值,如下:

[hxstrive@localhost ~]$ cut -d ',' -f-2 demo.txt
id,name
100,zhangsan
200,lisi
300,zhaoliu
400,wanger

如果指定格式为-fn-,则返回n~末尾字段的值,如下:

[hxstrive@localhost ~]$ cut -d ',' -f2- demo.txt
name,age
zhangsan,20
lisi,22
zhaoliu,31
wanger,28

更多关于命令详细参考手册,请使用 man 命令或者 --help 参数获取帮助信息

关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号