sort:

选项:
-b 忽略每行前面开始出的空格字符
-c 检查文件是否已经按照顺序排序
-d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符
-f 排序时,将小写字母视为大写字母
-i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符
-m 将几个排序好的文件进行合并
-M 将前面3个字母依照月份的缩写进行排序
-n 依照数值的大小排序
-o 将排序后的结果存入指定的文件
-r 倒序
-t 指定排序时所用的分隔符, 默认为[tab](通常和 -k 参数一起使用)
-k 指定以第几个字段进行排序
-u uniq, 相同的数据, 仅出现一行
+<起始栏位>-<结束栏位> 以指定的字段来排序,范围由起字段到结束字段的前一个字段
--help 显示帮助信息 示例:
sort /etc/passwd
sort -t ':' -k 3 /etc/passwd -n
sort -t ':' -k 3 /etc/passwd -n -r

  

uniq:

选项: 不指定选项, 默认重复的行只出现一次
-c 在每列旁边显示该行重复出现的次数
-d 仅显示重复出现的行
-u 仅显示出现过一次的行(唯一的行)
-w 指定要比较的字段 示例:
last | sort -k '3' | uniq -w 3 -c

  

sort 和 uniq 使用示例:

示例文件:
cat test1.txt
1
2
3
4
5 cat test2.txt
1
3
5
6
7
9 示例1: 求两个文件的交集
# 实现思路: 交集, 即两个文件都存在的列, 使用 sort 排序之后再使用 uniq -d 命令即可实现
sort test1.txt test2.txt | uniq -d
1
3
5 示例2: 求两个文件的并集
# 实现思路: 并集, 即两个文件合并在一起, 去除重复的行, 使用 sort 排序之后再使用 uniq 或者 sort -u
sort test1.txt test2.txt | sort -u 或者 sort test1.txt test2.txt | uniq
1
2
3
4
5
6
7
9 示例3: 求两个文件的差集
# 实现思路: 差集(test1-test2), 把 test2 的行重复2次和 test1 的元素放到一起排序, 只输出出现一次的项
# test1 相对 test2 的差集
sort test1.txt test2.txt test2.txt | uniq -u
2
4 # test2 相对 test1 的差集
sort test1.txt test1.txt test2.txt | uniq -u
6
7
9 示例4: 求两个文件的对称差
# 实现思路: 对称差, 即两个文件加起来只出现过一次的行, 使用 sort 排序之后再使用 uniq -u
sort test1.txt test2.txt | uniq -u
2
4
6
7
9

  

Linux sort和uniq命令的应用的更多相关文章

  1. linux sort 、uniq 命令

    以文件的每行为单位,从左往右依次按ascii码进行比较 sort sort.txt #默认为升序 -u:去除重复行 sort -u sort.txt -r:降序排列 sort -r sort.txt ...

  2. xargs、sort、uniq命令

    xargs.sort.uniq命令,我们由LeetCode的一道题来引入,并使用加以理解: 题目是这样的:写一个 bash 脚本以统计一个文本文件 words.txt 中每个单词出现的频率. word ...

  3. linux shell 脚本攻略学习8---md5校验,sort排序,uniq命令详解

    一.校验与核实 目前最为出名的校验技术是md5sum和sha1sum,它们对文件内容使用相应的算法来生成校验和. 举例: amosli@amosli-pc:~/learn$ md5sum text.t ...

  4. sort与uniq命令详解

    1.sort的作用 (排序) sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出. 如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行 ...

  5. Linux基础:uniq命令总结

    本文只总结一些常用的用法,更详细的说明见man uniq和 uniq --help. uniq命令 uniq命令主要用于去重. 需要注意的是,不相邻的行不算重复值. 语法格式 Usage: uniq ...

  6. Linux中的uniq命令(去掉重复项,输出重复项)

    ls /bin /usr/bin | sort | uniq | less 上面这条命令的实际效果是: 获得 ls /bin /usr/bin 的 output 将上述 output 进行 sort ...

  7. Linux uniq 命令

    Linux uniq 命令  Linux 命令大全 Linux uniq 命令用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用. uniq 可检查文本文件中重复出现的行列. 语法 ...

  8. Linux中sort和uniq关于排序去重的那些用法

    相信在Linux下对文件操作经常会用到sort和uniq命令,下面系统的介绍一下这两个命令的用法. sort命令是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出.sort命令既可以从特 ...

  9. Linux -- 文件统计常用命令

    标签(空格分隔): Linux sort -- 文件内排序命令 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次比较其ASCII码. 按每行升序排序: sort seq.tx ...

随机推荐

  1. 浅谈Java中set.map.List的区别

    就学习经验,浅谈Java中的Set,List,Map的区别,对JAVA的集合的理解是想对于数组: 数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型),JAVA集合可以存储和操 ...

  2. nhibernate GetType

    本原理 /* This code assumes an IEntity interface that identifies your persistent types. */ /// <summ ...

  3. Part2_lesson3---ARM寄存器详解

    进入到ARM Architecture Reference Manual这个文档里面的A2.3 Registers R13在程序中通常用于充当SP堆栈指针的!! R14在程序当中通常用于充当LR(链接 ...

  4. 黑盒测试实践-任务进度-Day04

    任务进度11-29 使用工具 selenium 小组成员 华同学.郭同学.穆同学.沈同学.覃同学.刘同学 任务进度 经过了前两天的学习任务的安排,以下是大家的任务进度: 华同学(任务1) 1.和其他小 ...

  5. YII2 rule exist unique

    ['mobile', 'exist', 'targetClass' => 'xmobile\modules\v1\models\BuyerList', 'message' => '当前用户 ...

  6. javascript总结19:javascript 使用概述

    1 JS作用 1.验证表单(以前的网速慢)`` 2.页面特效(PC端的网页效果) 3.移动端(移动web和app) 4.异步和服务器交互(AJAX) 5.服务端开发(nodejs) 2 浏览器的主要构 ...

  7. iOS基础教程:在建好的项目中加入CoreData[转]

    这几天在做一个ios的小项目,项目中需要对数据进行基本的增删改查操作.于是就想用一把CoreData.但在创建项目初期,没有包含进CoreData.于是就在已建好的项目中加入CoreData.由于第一 ...

  8. android多lib库工程的自动批量构建--编写ant脚本

    基本配置--build.properties 首先编写基本配置build.properties ,主要配置如下: android sdk所在目录 编译项目所使用的项目版本 Jdk所在目录 以及签名时, ...

  9. CentOS 7.2安装gitlab-ce

    国内网络原因,gitlab-ce安装包可以在清华大学开源网站镜像站下载:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ [root@gitlab ~]# ...

  10. SoapUI设置Cookie

    因為.NET寫的Web Service的方法是需要驗證session的. 需要先call方法Login之後才能使用其它的方法.最近剛在學用SoapUI測試soap的API,剛好可以通過Groovy S ...