1. sort命令概述
sort命令是Linux系统中最基础也最强大的文本处理工具之一,它专门用于对文本文件的行进行排序操作。作为一名Linux系统管理员,我几乎每天都会用到这个命令来处理各种日志文件、数据报表和配置文档。
sort命令最核心的功能就是对输入的行进行排序输出,默认按照字典序排列。但它的能力远不止于此,通过不同的参数组合,我们可以实现:
- 数值排序(而不仅仅是字符串比较)
- 指定排序字段(处理表格数据时特别有用)
- 控制排序顺序(升序或降序)
- 去除重复行
- 合并已排序文件
在实际工作中,我经常用它来处理Apache日志分析、数据库导出文件整理、配置文件管理等任务。掌握sort命令的各种用法,能让你在命令行下的数据处理效率提升数倍。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. sort命令基础用法
2.1 基本排序操作
最简单的sort用法就是直接对文件内容进行排序:
bash复制sort filename.txt
这个命令会读取filename.txt文件的所有行,按照字典序排序后输出到屏幕。如果想直接修改原文件,可以配合重定向:
bash复制sort filename.txt > sorted_file.txt
注意:直接重定向到原文件会导致文件内容清空!安全做法是先输出到临时文件,确认无误后再覆盖原文件。
2.2 常用参数解析
sort命令有几十个参数,这里介绍最常用的几个:
-r:反向排序(降序)
bash复制sort -r filename.txt
-n:按数值排序(而不是字典序)
bash复制sort -n numbers.txt
-u:去除重复行
bash复制sort -u duplicates.txt
-o:指定输出文件
bash复制sort input.txt -o output.txt
-k:指定排序字段(在处理表格数据时特别有用)
bash复制sort -k 2 data.csv # 按第二列排序
3. 高级排序技巧
3.1 多字段排序
处理复杂数据时,经常需要按多个字段排序。比如一个员工数据文件,想先按部门排序,部门相同的再按工资排序:
b复制
