linux命令之排序命令sort命令

linux命令之排序命令sort命令,第1张

sort命令是对文件进行排序,并将排序的结果输出到屏幕,不影响原文件

以行为单位,将每一行作为一个单位,相互比较,比较原则是从首字符向后,以此按ASCII码进行比较,最后升序输出

参数

-b 忽略每行前面开始处的空格

-d 只按照英文字母,数字,空格字符排序,忽略其他字符

-m 将几个排序好的文件进行合并

-n 依照数值的大小进行排序,如果是按照数值大小排序一定要加 -n ,否则就会出现 10 比2 小的情况,因为默认比较数值是先比较第1位的,后面的位不考虑

-o 将排序好的结果输出到文件, 也可以使用重定向符号 输出到文件中

-r 以相反的顺序来排序, 默认是升序

Linux sort命令用于将文本文件内容加以排序,sort可针对文本文件的内容,以行为单位来排序。

sort命令的语法格式:sort[参数][文件]

Linux sort命令参数:

-b:忽略每行前面开始出的空格符号。

-c:检查文件是否已经按照顺序排序。

-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符。

-f:排序时,将小写字母视为大写字母。

-i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符。

-m:将几个排序好的文件进行合并。

-M:将前面三个字母依照月份的缩写进行排序。

-n:依照数值的大小排序。

-u:意味着是唯一的,输出的结果是去完重了的。

-o:<输出文件>将排序后的结果存入指定的文件。

-r:以相反的顺序来排序。

-t:<分隔字符>指定排序时所用的栏位分隔字符。

在linux系统使用过程中,提供了sort排序命令,支持常用的排序功能。

sort命令支持很多参数,常用参数如下:

默认情况下,sort命令,以字母序进行文本排序。如下:

如果想对数字进行排序,可以使用-n参数

sort排序的时候,可以按字段分割的数据进行排序。-t参数表示行的分割字符,-k表示第几列。当然,可以进行降序排序,-r参数可以实现。

下面是对passwd文件,以冒号(:)进行分割,然后对第三列以数字方式进行降序排序。

在du的时候,加上-h可以使用易读性数字,比如2k,1g,3M这种。sort也支持-h参数。

比如,du一个文件夹下的目录大小后,想以文件大小进行排序。由于du -h的结果是3k,2M,1G这种,不能简单的按数字排序。所以,可以使用-h参数。具体如下:

查看系统进程中,内存占用最多的前5个进程信息

如果文件内容有很多重复的,需要进行去重。sort也是支持的,可以通过-u参数使用

在shell中,一般将控制台内容写入文件,可以使用重定向,但如果想把sort的排序内容写回文件,则不能使用重定向。则需要-o参数。具体如下:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8314973.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存