sort命令是Linux系统中用于对文本文件内容进行排序的核心工具,支持多种排序方式和选项。以下是关键信息整合:
一、基础功能
-
排序类型 :支持按字母(默认)、数字(-n)、月份(-M)、通用数值(-g)、忽略大小写(-f)、逆序(-r)等排序。
-
处理方式 :逐行读取文件内容,根据指定规则比较并输出排序结果,支持标准输入或指定文件。
二、核心参数
-
排序规则
-
-n
:按数值排序(不转换为浮点数) -
-g
:按通用数值排序(支持科学计数法) -
-f
:忽略大小写 -
-M
:按月份缩写排序(如JAN < FEB) -
-h
:按人类可读数值排序(如2K1G)
-
-
字段与分隔符
-
-k
:指定排序字段(支持多字段,用逗号分隔) -
-t
:设置字段分隔符(默认为制表符或空格)
-
-
输出与去重
-
-o
:将结果输出到指定文件 -
-u
:去除重复行
-
三、常见用法示例
-
基础排序
sort file.txt # 默认按字母排序
-
数字排序
sort -n num.txt # 按数值排序
-
多字段排序
sort -t, -k1,2 -r file.csv # 按逗号分隔,先排序第1列,再排序第2列,降序排列
-
去重排序
sort -u file.txt # 去重后排序
四、注意事项
-
排序依据 :默认按字符ASCII码排序,需通过参数调整。
-
文件检查 :使用
-c
选项可验证文件是否已排序。
sort命令通过灵活的参数组合,可高效处理文本数据,适用于日志分析、数据清洗等场景。