Linux幼儿园

  • 首页
  • 信息安全
  • 防火墙
  • 知识点
  • 活动目录
  • 硬件
  • 软件
  • linux干货
  • linux命令集
    • 备份压缩
    • 文件传输
    • 文件管理
    • 文档编辑
    • 磁盘管理
    • 系统管理
    • 网络通讯
    • 设备管理
    • 其他命令
  1. 首页
  2. linux命令集
  3. 文件管理
  4. 正文

cut命令 - 连接文件并打印到标准输出设备上

04/23/2019 322点热度 0人点赞 0条评论

cut命令有两个主要的功能,第一是显示文件内容,第二是连接多个或多个文件。

若不指定file参数,该命令将读取标准输入。 必须指定 -b、-c 或 -f 标志之一。

语法格式:cut [参数] [文件]

常用参数:

-b以字节为单位进行分割 ,仅显示行中指定直接范围的内容
-c以字符为单位进行分割 , 仅显示行中指定范围的字符
-d自定义分隔符,默认为制表符"TAB"
-f显示指定字段的内容 , 与-d一起使用
-n取消分割多字节字符
--complement补足被选择的字节、字符或字段
--out-delimiter指定输出内容是的字段分割符

参考实例

假设有一个学生报表信息,包含 No、Name、Mark、Percent:

[root@linuxvip ~]# cat student.txt 
No Name Mark Percent
01 tom 69 91
02 jack 71 87
03 alex 68 98

使用 -f 选项提取指定字段(这里的 f 参数可以简单记忆为 --fields的缩写):

[root@linuxvip ~]# cut -f 2 student.txt 
Name
tom
jack
alex

--complement 选项提取指定字段之外的列(打印除了第二列之外的列):

[root@linuxvip ~]# cut -f2 --complement student.txt 
No Mark Percent
01 69 91
02 71 87
03 68 98

使用 -d 选项指定字段分隔符:

[root@linuxvip ~]# cat student2.txt 
No;Name;Mark;Percent
01;tom;69;91
02;jack;71;87
03;alex;68;98
[root@linuxvip ~]# cut -f2 -d";" student2.txt 
Name
tom
jack
alex
[root@linuxvip ~]# cat test.txt 
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz

打印第 1 个到第 3 个字符:

[root@linuxvip ~]# cut -c1-3 test.txt 
abc
abc
abc
abc
abc

注意:-b 表示字节;-c 表示字符;-f 表示定义字段。

N- :从第 N 个字节、字符、字段到结尾; N-M :从第 N 个字节、字符、字段到第 M 个(包括 M 在内)字节、字符、段; -M :从第 1 个字节、字符、字段到第 M 个(包括 M 在内)字节、字符、字段。

打印前 2 个字符:

[root@linuxvip ~]# cut -c-2 test.txt 
ab
ab
ab
ab
ab

打印从第 5 个字符开始到结尾:

[root@linuxvip ~]# cut -c5- test.txt 
efghijklmnopqrstuvwxyz
efghijklmnopqrstuvwxyz
efghijklmnopqrstuvwxyz
efghijklmnopqrstuvwxyz
efghijklmnopqrstuvwxyz
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:04/23/2019

JJJ

这个人很懒,什么都没留下

打赏 点赞
< 上一篇
下一篇 >

COPYRIGHT © 2021 linuxvip.com. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

TrustAsia 安全签章