前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >sort命令

sort命令

作者头像
WindrunnerMax
发布2021-01-08 14:19:13
5580
发布2021-01-08 14:19:13
举报
文章被收录于专栏:Czy‘s BlogCzy‘s Blog

sort命令

sort命令用于将文本文件内容加以排序,可针对文本文件的内容,以行为单位来排序。

语法

代码语言:javascript
复制
sort [OPTION]... [FILE]...
sort [OPTION]... --files0-from=F

参数

  • -b, --ignore-leading-blanks: 忽略前导空格。
  • -d, --dictionary-order: 只考虑空格和字母数字字符。
  • -f, --ignore-case: 将小写字符转为大写字符。
  • -g, --general-numeric-sort: 按一般数值进行比较。
  • -i, --ignore-nonprinting: 只考虑可打印字符。
  • -M, --month-sort: 比较JAN < ... < DEC
  • -h, --human-numeric-sort: 比较人类可读的数字,例如2K1G
  • -n, --numeric-sort: 根据字符串数值进行比较。
  • -R, --random-sort: 按键的随机哈希排序。
  • --random-source=FILE: 从FILE中获取随机字节。
  • -r, --reverse: 反转比较结果。
  • --sort=WORD: 根据WORD排序:一般数字-g,chan数字-h,月份-M,数字-n,随机-R,版本-V
  • --batch-size=NMERGE: 一次最多合并NMERGE输入,对于更多输入,请使用临时文件。
  • -c, --check, --check=diagnose-first: 检查已排序的输入,不排序。
  • -C, --check=quiet, --check=silent: 类似于-c但不报告第一行错误。
  • --compress-program=PROG: 用PROG压缩临时文件,用PROG-d解压临时文件。
  • --debug: 注释行中用于排序的部分,并向stderr警告可疑用法。
  • --files0-from=F: 从文件F中以NUL结尾的名称指定的文件读取输入,如果F-,则从标准输入读取名称。
  • -k, --key=POS1[,POS2]: 在POS1处开始键(原点1),在POS2处结束键(默认行结束)。
  • -m, --merge: 合并已排序的文件,不排序。
  • -o, --output=FILE: 将结果写入FILE而不是标准输出。
  • -s, --stable: 通过禁用最后的比较来稳定排序。
  • -t, --field-separator=SEP: 使用SEP代替非空到空的转换。
  • -T, --temporary-directory=DIR: 将DIR用于临时文件,而不是$TMPDIR/tmp多个选项指定多个目录。
  • --parallel=N: 将同时运行的排序数更改为N
  • -u, --unique: 对于-c检查严格的顺序,只输出相等运行的第一个。
  • -z, --zero-terminated: 以0字节结束行,而不是换行。
  • --help: 输出帮助信息。
  • --version: 输出版本信息。

示例

file.txtfile1.txtfile2.txt文件内容如下。

代码语言:javascript
复制
# file.txt
abhishek
chitransh
satish
rajan
naveen
divyam
harsh

# file1.txt
50
39
15
89
200

# file2.txt
abc
apple
BALL
Abc
bat
bat

file.txt文件内容进行排序,要保存的话需要使用输出重定向。

代码语言:javascript
复制
sort file.txt
# abhishek
# chitransh
# divyam
# harsh
# naveen
# rajan
# satish

sort file2.txt
# abc
# Abc
# apple
# BALL
# bat
# bat

可以使用-r标志执行逆序排序。

代码语言:javascript
复制
sort -r file.txt
# satish
# rajan
# naveen
# harsh
# divyam
# chitransh
# abhishek

使用-n对数字进行排序,不使用-n的话则会使用字典序排序。

代码语言:javascript
复制
sort -n file1.txt
# 15
# 39
# 50
# 89
# 200

sort file1.txt
# 15
# 200
# 39
# 50
# 89

要对带有反向数字数据的文件进行排序,我们可以使用下面-nr两个选项的组合。

代码语言:javascript
复制
sort -nr file1.txt
# 200
# 89
# 50
# 39
# 15

使用-u排序并删除重复项。

代码语言:javascript
复制
sort -u file2.txt
# abc
# Abc
# apple
# BALL
# bat

使用-c检查文件是否已经按照顺序排序。

代码语言:javascript
复制
sort -c file2.txt
# sort: file2.txt:4: disorder: Abc

每日一题

代码语言:javascript
复制
https://github.com/WindrunnerMax/EveryDay

参考

代码语言:javascript
复制
https://www.computerhope.com/unix/usort.htm
https://www.runoob.com/linux/linux-comm-sort.html
https://www.geeksforgeeks.org/sort-command-linuxunix-examples/
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-01-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • sort命令
    • 语法
      • 参数
        • 示例
          • 每日一题
            • 参考
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档