uniq - report or omit repeated lines

sort
-r
-t uniq
-r
-c

uniq的作用: 去除相邻重复行

[root@n1 data]# cat ip.txt
10.0.0.9
10.0.0.8
10.0.0.7
10.0.0.7
10.0.0.8
10.0.0.8
10.0.0.9 [root@n1 data]# uniq ip.txt
10.0.0.9
10.0.0.8
10.0.0.7
10.0.0.8
10.0.0.9

sort作用: 让通的行相邻

- 让相同的行相邻
[root@n1 data]# sort ip.txt
10.0.0.7
10.0.0.7
10.0.0.8
10.0.0.8
10.0.0.8
10.0.0.9
10.0.0.9 - 去掉相邻重复的行: 方法1
[root@n1 data]# sort ip.txt |uniq
10.0.0.7
10.0.0.8
10.0.0.9 - 方法2:
[root@n1 data]# sort -u ip.txt
10.0.0.7
10.0.0.8
10.0.0.9

去重+统计次数

[root@n1 data]# sort ip.txt |uniq -c
2 10.0.0.7
3 10.0.0.8
2 10.0.0.9

题目:[百度搜狐面试题] 统计url出现次数

maotai.log

http://www.maotai.com/index.html
http://www.maotai.com/1.html
http://post.maotai.com/index.html
http://mp3.maotai.com/3.html
http://www.maotai.com/1.html
http://post.maotai.com/2.html
- 过滤url
[root@n1 data]# awk -F / '{print $3}' url.txt
www.maotai.com
www.maotai.com
post.maotai.com
mp3.maotai.com
www.maotai.com
post.maotai.com - sourt+uniq降序排列
[root@n1 data]# awk -F / '{print $3}' url.txt|sort|uniq -c
1 mp3.maotai.com
2 post.maotai.com
3 www.maotai.com
- 降序排序:

方法1: awk
[root@n1 data]# awk -F / '{print $3}' url.txt|sort|uniq -c|sort -r
3 www.maotai.com
2 post.maotai.com
1 mp3.maotai.com 方法2: cut
[root@n1 data]# cut -d / -f3 url.txt |sort|uniq -c|sort -r
3 www.maotai.com
2 post.maotai.com
1 mp3.maotai.com 优化:
[root@n1 data]# cut -d / -f3 url.txt |sort -r|uniq -c
3 www.maotai.com
2 post.maotai.com
1 mp3.maotai.com

对第二列排序

sort
-t 分隔符, 类似awk的-F,取字段用$1 $2或cut的-d,取字段f数字.
–k 第几列 [root@n1 test]# cat ip.txt
10.0.0.9 o
10.0.0.9 a
10.0.0.8 z
10.0.0.8 k
10.0.0.8 c
10.0.0.7 n
10.0.0.7 f [root@n1 test]# sort -t " " -k2 ip.txt
10.0.0.9 a
10.0.0.8 c
10.0.0.7 f
10.0.0.8 k
10.0.0.7 n
10.0.0.9 o
10.0.0.8 z
注: 分隔符默认是空格,因此 –t 可以省略 [root@n1 test]# sort -k2 ip.txt
[root@n1 test]# sort -rk2 ip.txt #倒序排列
sort –runtk
-r --reverse 倒序
–u --unique 去重
–n --numeric-sort 按数字排序
-t --field-separator=SEP 分隔
–k --key=KEYDEF 通过key排序 uniq
–c --count

题目:要求对ip的第三列降序排序,如果第三列相同,那就第四列按照降序排序.

[root@n1 test]# cat arp.txt
192.168.0.3 00:e0:4c:41:d2:a5
192.168.2.2 00:e0:4c:41:d1:7d
192.168.3.7 00:50:bf:11:94:60
192.168.3.5 00:e0:4c:43:a3:46
192.168.2.4 00:0a:eb:6d:08:10
192.168.1.2 00:01:6c:99:37:47
192.168.4.9 00:0a:e6:b5:d1:4b
192.168.0.4 00:0e:1f:51:74:24
192.168.6.7 00:1d:72:40:b2:e1
192.168.8.4 00:01:6c:36:5d:64
192.168.1.22 00:e0:4c:41:ce:73
192.168.0.15 00:e0:4c:41:d7:0e
192.168.2.9 00:e0:4c:41:d1:8b
192.168.0.122 00:16:ec:c5:46:45
192.168.9.115 00:01:6c:98:f7:07
192.168.7.111 00:17:31:b6:6e:a9
sort -t. -k3.1,3.1nr -k4.1,4.3nr arp.txt
-k多少列
-k3.1,3.3 第三列第一个字符到第三列第一个字符
-k4.1,4.3 第四列第一个字符,第四列第三个字符
[root@n1 test]# sort -t. -k3.1,3.1nr -k4.1,4.3nr arp.txt
192.168.9.115 00:01:6c:98:f7:07
192.168.8.4 00:01:6c:36:5d:64
192.168.7.111 00:17:31:b6:6e:a9
192.168.6.7 00:1d:72:40:b2:e1
192.168.4.9 00:0a:e6:b5:d1:4b
192.168.3.7 00:50:bf:11:94:60
192.168.3.5 00:e0:4c:43:a3:46
192.168.2.9 00:e0:4c:41:d1:8b
192.168.2.4 00:0a:eb:6d:08:10
192.168.2.2 00:e0:4c:41:d1:7d
192.168.1.22 00:e0:4c:41:ce:73
192.168.1.2 00:01:6c:99:37:47
192.168.0.122 00:16:ec:c5:46:45
192.168.0.15 00:e0:4c:41:d7:0e
192.168.0.4 00:0e:1f:51:74:24
192.168.0.3 00:e0:4c:41:d2:a5

题目:[百度搜狐面试题] 统计url出现次数 ---awk解决

maotai.log
http://www.maotai.com/index.html
http://www.maotai.com/1.html
http://post.maotai.com/index.html
http://mp3.maotai.com/3.html
http://www.maotai.com/1.html
http://post.maotai.com/2.html

[svc]sort-uniq的更多相关文章

  1. [linux] grep awk sort uniq学习

    grep的-A-B-选项详解grep能找出带有关键字的行,但是工作中有时需要找出该行前后的行,下面是解释1. grep -A1 keyword filename找出filename中带有keyword ...

  2. linux sort,uniq,cut,wc.

    文章转自 http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858385.html sort sort 命令对 File 参数指定的文件中的行排 ...

  3. [转]linux sort,uniq,cut,wc命令详解

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

  4. linux sort,uniq,cut,wc命令详解

    linux sort,uniq,cut,wc命令详解 sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些 ...

  5. linux sort,uniq,cut,wc,tr命令详解

    sort是在Linux里非常常用的一个命令,对指定文件进行排序.去除重复的行 sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sor ...

  6. Linux之 sort,uniq,cut,wc命令详解

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

  7. Ubuntu 14.10 下sort,uniq,cut,wc命令详解

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

  8. Linux下命令sort, uniq

    标题:sort, uniq 一.sort命令的使用       1. 作用:sort命令顾名思意,其可以帮助我们进行排序,而且可以依据不同的数据类型来排序.例如数字和文字的排序就不一样,sort可以指 ...

  9. sort uniq妙用

    cat a b | sort | uniq > c   # c是a和b的并集 cat a b | sort | uniq -d > c   # c是a和b的交集 cat a b b | s ...

  10. linux sort,uniq,cut,wc命令详解 (转)

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

随机推荐

  1. java爬虫抓取腾讯漫画评论

    package com.eteclab.wodm.utils; import java.io.BufferedWriter; import java.io.File; import java.io.F ...

  2. html5 选择多张图片在页面内预览并上传到后台

    版权声明:本文为博主原创文章,未经博主允许不得转载. http://blog.csdn.net/huangxin112/article/details/74956462 需求:点击选择图片(可选多张) ...

  3. 用VScode代码调试Python

    Python扩展支持许多类型的Python应用程序的调试,包括以下一般功能: 观看窗口 评估表达式 当地人 参数 扩大孩子 断点 条件断点 暂停(进入)正在运行的程序 自定义启动目录 要熟悉这些常规功 ...

  4. nc高级应用

    参数介绍: nc.exe -h即可看到各参数的使用方法. 基本格式:nc?[-options]?hostname?port[s]?[ports]?... nc?-l?-p?port?[options] ...

  5. go语言学习-结构体

    结构体 go语言中的结构体,是一种复合类型,有一组属性构成,这些属性被称为字段.结构体也是值类型,可以使用new来创建. 定义: type name struct { field1 type1 fie ...

  6. saxon 处理xslt

    下载saxon : https://sourceforge.net/projects/saxon/?source=typ_redirect 下载后拿到: saxon9he.jar 运行CMD: C:\ ...

  7. 17,EasyNetQ-替换EasyNetQ组件

    EasyNetQ是一个由小型组件组成的库. 当你写: var bus = RabbitHutch.CreateBus("host=localhost"); ...静态方法Creat ...

  8. NODESCHOOL

    来源:https://nodeschool.io/zh-cn/ 核心基础课程(Core) javascripting 学习 JavaScript 语言的基础,无需任何编程经验 npm install ...

  9. 洛谷P1342 请柬(SPFA)

    To 洛谷.1342 请柬 题目描述 在电视时代,没有多少人观看戏剧表演.Malidinesia古董喜剧演员意识到这一事实,他们想宣传剧院,尤其是古色古香的喜剧片.他们已经打印请帖和所有必要的信息和计 ...

  10. (华中科大)江南雨烟 C++ STL 专栏

    本文转载来自,华中科技大学江南雨烟的C/C++专栏部分STL剖析文章,以作学习之用. [1]  [C++ STL学习之一]容器的共通能力和共通操作总结 [2]  [C++ STL学习之二]容器vect ...