linux系统文件怎么进行排序1、用CRT软件连接一个Linux系统。
2、打开需要查看linux按字段排序命令的文件夹 。以 tmp为例 。
3、用 ll 命令 查看有哪些文件 。
4、默认为按照大小进行排序 。需要按照时间进行排序 。
5、用 ll -t命令进行时间排序linux按字段排序命令 , 这样是默认为降序 。
6、用 ll -t | tar 命令进行时间排序,这样为升序 。
linux sort 命令整理 无论是工作中使用还是应付各种面试linux按字段排序命令 , linux sort 都是必须要掌握的 linux 基本命令之一 。尤其是 linux sort -k 命令,经常会被搞晕,索性好好研究一下 sort 命令
语法:
选项:
参数就不一一介绍linux按字段排序命令了,直接上例子,首先先看下原始的排序数据
cat sort.log
1、打印从哪列开始是乱序
sort -c sort.log; echo $?
sort -C sort.log; echo $?
其中,返回结果 1,表示文件不是已经排序好的文件
2、默认排序( 整行进行ASCII字符升序)
sort sort.log
3、高能来了,让人迷糊的 k 语法 , 首先看下 k 的语法格式
这个语法格式可以被其中的逗号(”,”)分为两大部分,Start部分和End部分
Start和End部分都由三部分组成,其中的Modifier部分就是类似n和r的选项部分,可省略
FStart、Fend , 表示使用的域,而CStart则表示在FStart域中从第几个字符开始算"排序首字符",同理,CEnd表示结尾的第几个字符是排序末尾字符,.CStart、.CEnd是可以省略的,分别表示从本域的开头部分开始、到本域的域尾结束,CEnd设定为0,也是表示结尾到域尾 。口说无凭,上几个例子吧
3.1 对第三列进行排序 , 如果不加n,按照 ASCII字符排序
sort -t $'\t' -k 3 sort.log
3.2 加n后,按照数值排序
sort -t $'\t' -k 3n sort.log
3.3 不指定 FEnd 时 , 多个-k 从前往后排序可以,从后往前不行
从后往前,多个 -k , 数据符合预期
sort -t $'\t' -k 3n -k 1 sort.log
从后往前,多个 -k,第三列相同时,按照第一列降序排列,数据符合预期
sort -t $'\t' -k 3n -k 1r sort.log
更换成从前往后
sort -t $'\t' -k 1 -k 3n sort.log
sort -t $'\t' -k 1 -k 3nr sort.log
通过sort -t $'\t' -k 1 -k 3n sort.log 和sort -t $'\t' -k 1 -k 3nr sort.log返回的结果发现,在第一列相等时,无论其三列是正序排列,还是逆序排列 , 结果都一样,说明后边的 -k 未生效
当指定 FEend 后
sort -t $'\t' -k 1,1 -k 3nr sort.log
3.4 作用域
紧跟在字段后的选项(如"-k3n"的"n"和"-k2nr"的"n","r")称为私有选项 , 使用短横线写在字段外的选项(如"-n"、"-r")为全局选项 。当没有为字段分配私有选项时,该排序字段将继承全局选项,所有选项包括但不限于"bfnrhM"
除了"b"选项外 , 其余选项无论是指定在FStart还是FEnd中都是等价的,对于"b"选项,指定在FStart则作用于FStart,指定在FEnd则作用于FEnd
sort -t $'\t' -k1r,2 sort.log , 可以看出一、二列都是倒叙排列
3.5 注意
指定n选项按数值排序时, 由于"n"选项只能识别数字和负号"-",当排序时遇到无法识别字符时,将导致该key的排序立即结束 , n选项绝对不会跨域进行比较
默认情况下,sort会进行一次 "最后的排序" ,按照默认规则对整行进行一次排序 , 这次排序称为"最后的排序"
sort -t $'\t' -k3n sort.log,在第三列相等时,整行会按照 ASCII 进行最后的升序排列
sort -t $'\t' -k3,4n -s sort.log ,加了 -s 后,不会进行最后的排序(1000相同时 , e在b的前边了),而是保留原排序
3.6 按照某个域中的第n个字符进行排序
sort -t $'\t' -k2.3,2.3 sort.log ,按第二列第三个字符进行排序
4、 -h使用易读性数字(例如:2K、1G)
sort -t $'\t' -k5h sort.log
sort -t $'\t' -k2,2 sort.log|uniq
sort -t $'\t' -k2,2 -u sort.log会对第二列进行去重,而sort -t $'\t' -k2,2 sort.log|uniq会对整行进行去重(当然uniq也可以按照第二列进行去重)
sort整理完了,欢迎大牛指教
sort 命令详解在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参数 。具体如下:
【linux按字段排序命令 linux ls按名称排序】linux按字段排序命令的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux ls按名称排序、linux按字段排序命令的信息别忘了在本站进行查找喔 。
推荐阅读
- erp系统安装工作日志,erp软件的操作日记
- js里的对象属性取不出啦,js取对象属性值
- 如何关注海州区公众号,如何关注海州区公众号微信
- 模拟劳斯莱斯魅影游戏下载,劳斯莱斯魅影模拟器
- MySQL下载怎么压缩 mysql压缩包下载了怎么弄
- 手机表格怎么复制U盘,手机上的表格怎样复制
- 连接国外服务器的注意,连接国外服务器的app
- 如何成为虎牙直播,怎么成为虎牙直播
- 用c语言定义一个求和函数 c语言实现求和