Linux 的 cut 命令是一个用于文本处理的实用工具,主要用于从文件或标准输入中提取特定部分。它通常与其他命令结合使用,在数据处理和脚本编写中非常有用。
基本语法
cut [选项] [文件]
常用选项
-b:按字节截取-c:按字符截取-f:按字段截取(默认使用制表符作为分隔符)-d:指定字段分隔符(常与-f配合使用)--complement:显示未被选中的部分
使用示例
1. 按字符截取
bash
echo "abcdef" | cut -c 2-4
输出:bcd(提取第2到第4个字符)
2. 按字段截取
假设文件 data.txt 内容为:
Alice:25:Engineer
Bob:30:Teacher
bash
cut -d ':' -f 1,3 data.txt
输出:
Alice:Engineer
Bob:Teacher
(使用冒号作为分隔符,提取第1和第3个字段)
3. 结合其他命令使用
bash
ps aux | cut -d ' ' -f 1 | sort | uniq
这个管道组合:
- 获取所有进程信息
- 提取用户名(第1个字段)
- 排序
- 去重
注意事项
- 默认字段分隔符是制表符,使用
-d可以指定其他分隔符 - 字段编号从1开始
- 可以指定范围:
N:第N个字段/字符N-M:从N到MN-:从N到最后-M:从开始到M
应用场景
- 日志分析:提取特定字段
- 数据清洗:处理CSV/TSV文件
- 系统监控:提取进程信息
- 脚本编写:快速处理文本数据
cut 命令简单高效,特别适合处理结构化文本数据,是Linux文本处理工具箱中的重要组成部分。
Linux 的 cut 命令