• Linux基础命令---sort


    sort

          以行为单位,对文本文件进行排,并输出排序结果。默认情况下,以每一行为一个单位,从首字符开始按照ASCII码向后逐个比较。

          此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

     

    1、语法

          sort [选项]  file

          sort [OPTION]... --files0-from=F

     

    2、选项列表

    选项

    说明

    --help

    显示帮助文档

    --version

    显示版本信息

    -b

    忽略每行开头的空白字符

    -d | --dictionary-order

    排序时只考虑空格、数字、英语字母

    -f | --ignore-case

    将小写字母改为大写

    -g | --general-numeric-sort

    按一般数值比较

    -i | --ignore-nonprinting

    只考虑040到176之间的ASCII字符

    -M | --month-sort

    按月份排序

    -h | --human-numeric-sort

    按可读性数据排序,例如1K,2G

    -n | --numeric-sort

    按数值大小排序        

    -R | --random-sort

    按键的随机散列排序

    --random-source=FILE

    从文件中获取随机字节

    -r | --reverse

    逆序排列

    --sort=WORD

    按给出的要求排序:general-numeric  -g,  human-numeric  -h,  month  -M, numeric -n, random -R, version -V

    -V | --version-sort

    按版本数字排序

    --batch-size=NMERGE

    最多一次合并NMERGE个输入;更多地使用temp文件

    -c | --check | --check=diagnose-first

    检测是否已排序,不排序

    -C | --check=quiet | --check=silent

    和“-c”一样,不要报告第一个坏行

    --compress-program=PROG

    用prog压缩时间,用prog-d解压

    --files0-from=F

    从文件F中以NUL结尾的名称指定的文件读取输入;如果F是-,则从标准输入中读取名称。

    -k | --key=POS1[,POS2]

    在POS 1(起始1)处启动键,在POS 2(默认行尾)结束键

    -m | --merge

    合并已经排序的文件,不排序

    -o | --output=file

    将结果输出到指定文件

    -s | --stable

    通过禁用最后的比较来稳定排序

    -S | --buffer-size=SIZE

    主内存缓冲器使用SIZE

    -t | --field-separator=SEP

    使用sep代替分隔符

    -T | --temporary-directory=DIR

    将DIR用于临时目录,而不是$TMPDIR或/tmp;多个选项指定多个目录

    -u, --unique

    和“-c”一起使用,检查是否有严格的排序;如果没有-c,则只输出相同运行的第一个。

    -z, --zero-terminated

    结束行为0字节,而不是换行符

     

    3、实例

    1)直接排序

    [root@192 weijie]# cat 1.c

    1K

    1M

    1G

    1T

    [root@192 weijie]# sort 1.c         //直接对比字符排序

    1G

    1K

    1M

    1T

    2)按照可读的单位来排序 

    [root@192 weijie]# sort -h 1.c       //文件的内容按照单位排序,这些很明显是内存大小单位

    1K

    1M

    1G

    1T

    3)按照数字排序

    [root@192 weijie]# cat 2.c

    123

    23

    212

    [root@192 weijie]# sort 2.c         //默认排序,按照字符逐个比较

    123

    212

    23

    [root@192 weijie]# sort -n 2.c     //把内容当做数字排序

    23

    123

    212

  • 相关阅读:
    编程题练习
    算法:快速排序
    ansible的playbook剧本
    Django框架之验证码生成示例
    Django之auth模块用户认证模块
    Django框架之models和不依赖Qquery的ajax请求
    Django框架之序列化和上传文件
    Django高级篇一RESTful架构及API设计
    Git工具和GitHub的使用
    python之Flask框架
  • 原文地址:https://www.cnblogs.com/wj78080458/p/10021055.html
Copyright © 2020-2023  润新知