linux文件sort,linux下sort命令的用法

本文详细介绍了sort命令的功能和用法,包括如何对文本行进行字母或数字排序,以及如何使用多种选项来定制排序行为,例如逆序排序、忽略大小写、数字排序等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sort命令排列文本行,并把文件打印输出到屏幕上。sort命令提供了一种以字母或者数字顺序快速组织数据的方法。默认方式下,sort命令使用white space来分割文件中的不同域。

命令格式:

sort –options filenames

选项

可用的选项包括定义排序的类型、从哪个域开始排序。

-n 以数字方式排序

(+|-)n以n个分隔符开始(+n)、结束(-n)的域排序

-r 反向排序

-f忽略大小写

+nM 排列域的前三个字符作为缩写的月份名称

-d 排列目录顺序,只考虑字母、数字和空格。其他字符忽略

-o filename输出结果到指定filename文件中

-b 在限定起始和结束排序域时忽略开头的空格字符

-t char使用char字符作为域分隔符,如果没有指定该参数,则使用空格字符作为默认参数

$ls -ld f* > list$ cat list

-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers

-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers_6

-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.1

-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.2

-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.3

-rw-r--r-- 1 user1 staff 1696 Feb 22 14:51 file1

-rw-r--r-- 1 user1 staff 156 Mar 1 14:48 file2

-rw-r--r-- 1 user1 staff 218 Feb 22 14:51 file3

-rw-r--r-- 1 user1 staff 137 Feb 22 14:51 file4

-rw-r--r-- 1 user1 staff 56 Feb 22 14:51 fruit

-rw-r--r-- 1 user1 staff 57 Feb 22 14:51 fruit2

$ sort -rn +4 list -o num.list$ cat num.list

-rw-r--r-- 1 user1 staff 1696 Feb 22 14:51 file1

-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers_6

-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers

-rw-r--r-- 1 user1 staff 218 Feb 22 14:51 file3

-rw-r--r-- 1 user1 staff 156 Mar 1 14:48 file2

-rw-r--r-- 1 user1 staff 137 Feb 22 14:51 file4

-rw-r--r-- 1 user1 staff 57 Feb 22 14:51 fruit2

-rw-r--r-- 1 user1 staff 56 Feb 22 14:51 fruit

-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.3

-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.2

-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.1

$ sort +5M +6n list -o update.list

$ cat update.list

-rw-r--r-- 1 user1 staff 56 Feb 22 14:51 fruit

-rw-r--r-- 1 user1 staff 57 Feb 22 14:51 fruit2

-rw-r--r-- 1 user1 staff 137 Feb 22 14:51 file4

-rw-r--r-- 1 user1 staff 218 Feb 22 14:51 file3

-rw-r--r-- 1 user1 staff 1696 Feb 22 14:51 file1

-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.1

-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.2

-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.3

-rw-r--r-- 1 user1 staff 156 Mar 1 14:48 file2

-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers

-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers_6

$

第一个示例把ls命令的输出保存在文件list中,然后使用cat命令来查看文件内容。

第一条sort命令对第五个域产生一个反向、数字排序,排序的结果保存到文件num.list中。

第二条sort命令对文件list的域6和7进行多层排序,选项+5M对第6个域月份项按字母顺序排序,+6n对第7域天按数字顺序进行第二层排序,所有的排序结果保存在update.list文件中。

列出目录下所有文件,按时间排序:

ls -l | sort +7rn +5rn +6rn

当然也可以用:

ls -l --sort=t

ls -lt

另外可以用whereis和which定位, 如:

which perl

whereis perl

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值