• Linux基础:sort命令总结


    blog:https://www.cnblogs.com/Rohn/

    本文只总结一些常用的用法,更详细的说明见man sortsort --help

    sort命令

    sort命令用于串联排序指定文件并将结果写到标准输出。

    sort可以指定按照何种排序规则进行排序,如按照当前字符集排序规则(这是默认排序规则)、按照字典排序规则、按照数值排序规则、按照月份排序规则、按照文件大小格式(K<M<G)。还可以去除重复行,指定降序或升序(默认)的排序方式。

    字符集排序、字段排序的顺序:
    空字符串<空白字符<数值<a<A<b<B<...<z<Z

    语法格式

    Usage: sort [OPTION]... [FILE]...
      or:  sort [OPTION]... --files0-from=F
    

    选项说明

    OPTION 说明
    -c 检测给定的文件是否已经排序。如未排序,则会输出诊断信息,提示从哪一行开始乱序。
    -b 忽略字段前面的空格。若空格数量不固定时,推荐使用。"-n"选项隐含该选项。
    -d 按照字典顺序排序,只支持字母、数值、空格。
    -f 将所有小写字母等同于大写字母。
    -k 指定要排序的key。
    -n 按数值排序。
    -o 将结果输出到指定文件中。
    -r 降序排序。
    -t 指定字段分隔符。

    实例

    测试文本1.txt

    ZZ 2DF
    AA 330
    Sa n22
    dB ss2
    DD 231
       Aa 500
    bB 300
    CC 222
    BB 200
    

    示例

    # 默认的排序规则为字符集排序规则,且为升序
    [root@test ~]# sort 1.txt
    AA 330
       Aa 500
    BB 200
    bB 300
    CC 222
    dB ss2
    DD 231
    Sa n22
    ZZ 2DF
    
    # 将小写字母等同于大写字母
    [root@test ~]# sort -f 1.txt
       Aa 500
    AA 330
    BB 200
    bB 300
    CC 222
    dB ss2
    DD 231
    Sa n22
    ZZ 2DF
    
    
    # 降序
    [root@test ~]# sort -r 1.txt
    ZZ 2DF
    Sa n22
    DD 231
    dB ss2
    CC 222
    bB 300
    BB 200
       Aa 500
    AA 330
    
    # 根据第二列排序,分隔符为空格
    [root@test ~]# sort -t $' ' -k2 1.txt
    BB 200
    CC 222
    DD 231
    ZZ 2DF
    bB 300
    AA 330
       Aa 500
    Sa n22
    dB ss2
    
    # 将以上结果输出到2.txt
    [root@test ~]# sort -t $' ' -k2 1.txt -o 2.txt
    [root@test ~]# cat 2.txt
    BB 200
    CC 222
    DD 231
    ZZ 2DF
    bB 300
    AA 330
       Aa 500
    Sa n22
    dB ss2
    
  • 相关阅读:
    pycharm优化
    Shell基本命令
    Django项目订单接入支付宝
    浏览器的同源策略及跨域解决方案
    python datetime时区转换
    Django contenttypes 组件
    MySQL使用版本号实现乐观锁
    MySQL DDL Demo
    Redis分布式锁
    Zookeeper分布式锁
  • 原文地址:https://www.cnblogs.com/Rohn/p/11130197.html
Copyright © 2020-2023  润新知