发布时间:2025-12-10 19:31:04 浏览次数:19
linux sort 命令实用手册Linux中的sort命令是一个很实用的工具,用于对文本内容以行为单位进行ASCII码排序,默认按照升序进行排序(当然也可以按照降序)。sort命令的格式如下:sort`参数“文件名`这里不打算介绍其完整的使用方法,只介绍其重用方法,其完整手册可参看mansort。比如,我们有如下文本内容,可以看到其内容是无序的,其中有两行333和bbb:>>>c…
Linux 中的sort 命令是一个很实用的工具,用于对文本内容以行为单位进行ASCII 码排序,默认按照升序进行排序(当然也可以按照降序)。
sort 命令的格式如下:
sort `参数` `文件名` 是否还在为Ide开发工具频繁失效而烦恼,来吧关注以下公众号获取最新激活方式。亲测可用!
【正版授权,激活自己账号】:Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】:官方授权 正版激活 自己使用,支持Jetbrains家族下所有IDE…
这里不打算介绍其完整的使用方法,只介绍其重用方法,其完整手册可参看man sort。
比如,我们有如下文本内容,可以看到其内容是无序的,其中有两行333 和bbb:
>>> cat log.txt _______________5553332222666333bbbCCCaaacccbbb 使用sort 命令,不加任何参数,对该文件进行排序,如下,可看到已按照ASCII 码 进行了排序:
>>> sort log.txt ________________2222333333555666CCCaaabbbbbbccc 使用-f 参数可以忽略字符大小写进行排序,注意观察CCC 的位置:
>>> sort -f log.txt___________________2222333333555666aaabbbbbbCCCccc 使用-r 参数可以进行反向排序:
>>> sort -r log.txt ___________________cccbbbbbbaaaCCC6665553333332222 使用-u 参数,可以对重复行进行去重,可以看到只剩下一行333 和bbb:
>>> sort -u log.txt ___________________2222333555666CCCaaabbbccc 使用-o 参数,可以将排序结果写到某个文件(也可以是原文件),如下,将文件内容输出到log.txt2:
sort -u log.txt -o log.txt2 使用-n 参数,可以将排序结果按照数字大小进行排序,可以看到2222 排在了666 下面,这里只关心数字之间的次序就行(不需要关心字母与数字的关系):
>>> sort -n log.txt___________________aaabbbbbbccc3333335556662222 sort 命令还可以对行内容,先进行分割,再按照某列进行排序,这时需要用到-t 和-k 参数。
-t 参数用于设置以什么字符为分隔符,-k 参数用于以分割后的哪一列进行排序,如果没有设置,默认会按照第一列进行排序。
比如,我们有如下内容,每行内容以逗号,分割,注意第4行只有一列ddd:
>>> cat log2.txt ________________bbb,333aaa,2222ccc,66ddd,bbb,555 我们以逗号, 进行分割,并按照第一列进行排序,如下:
>>> sort -t , log2.txt ______________________aaa,2222bbb,333bbb,555ccc,66ddd, 按照第一列的第二个字符开始排序,如下1.2 表示从第一列的第二个字符开始排序:
>>> sort -t , -k 1.2 log2.txt_____________________________aaa,2222bbb,333bbb,555ccc,66ddd, 按照第二列,并以数字大小进行排序,如下:
>>> sort -t , -k 2 -n log2.txt ——————————————————————————————ddd,ccc,66bbb,333bbb,555aaa,2222 先按照第二列,再按照第一列进行排序,如下:
>>> sort -t , -k 2 -k 1 log2.txt _________________________________ddd,aaa,2222bbb,333bbb,555ccc,66 下面总结一下以上讲到的参数及其含义:
| 参数 | 含义 |
|---|---|
-f | 将小写字母视为大写字母,即忽略大小写 |
-r | 反向排序 |
-u | 去重 |
-o | 输出到文件 |
-n | 以数字大小进行排序 |
-t | 设置分隔符 |
-k | 设置按照第几列排序,与-t 参数配合使用 |
(完。)