Linux命令sort(文件排序,并将排序结果标准输出)

文章目录

  • Linux命令sort
  • 1. 数据准备sort.txt
  • 2. 按照“ ”分隔后第三列倒序排序
  • 3.按照“ ”分隔后第一列倒序排序
  • 4.按照“ ”分隔后第三列升序排序

Linux命令sort

sort命令是将文件进行排序,并将排序结果标注输出,文件内容并没有改变

  1. 基本语法
    sort(选项)(参数)
    -n:依照数值的大小排序
    -r:以相反的顺序来排序
    -t:设置排序时所用的分隔字符
    -k:指定需要排序的列
    参数:指定待排序的文件列表

1. 数据准备sort.txt

1001 zhangsan 39
1002 lisi 24
1003 wangwu 40
1004 lily 28
1005 lucy 32
1006 kevin 30

2. 按照“ ”分隔后第三列倒序排序

sort -t " " -nrk 3 sort.txt

[root@localhost jiaoben]# cat sort.txt
1001 zhangsan 39
1002 lisi 24
1003 wangwu 40
1004 lily 28
1005 lucy 32
1006 kevin 30
[root@localhost jiaoben]# sort -t " " -nrk 3 sort.txt
1003 wangwu 40
1001 zhangsan 39
1005 lucy 32
1006 kevin 30
1004 lily 28
1002 lisi 24
[root@localhost jiaoben]# cat sort.txt
1001 zhangsan 39
1002 lisi 24
1003 wangwu 40
1004 lily 28
1005 lucy 32
1006 kevin 30

3.按照“ ”分隔后第一列倒序排序

sort -t " " -nrk 1 sort.txt

[root@localhost jiaoben]# sort -t " " -nrk 1 sort.txt
1006 kevin 30
1005 lucy 32
1004 lily 28
1003 wangwu 40
1002 lisi 24
1001 zhangsan 39

4.按照“ ”分隔后第三列升序排序

sort -t " " -nk 3 sort.txt

[root@localhost jiaoben]# sort -t " " -nk 3 sort.txt
1002 lisi 24
1004 lily 28
1006 kevin 30
1005 lucy 32
1001 zhangsan 39
1003 wangwu 40

你可能感兴趣的:(linux,linux,shell)