Chinaunix首页 | 论坛 | 博客
  • 博客访问: 13042923
  • 博文数量: 1293
  • 博客积分: 13501
  • 博客等级: 上将
  • 技术积分: 17974
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-08 18:11
文章分类

全部博文(1293)

文章存档

2019年(1)

2018年(1)

2016年(118)

2015年(257)

2014年(128)

2013年(222)

2012年(229)

2011年(337)

分类: 其他UNIX

2015-03-27 17:40:28

    用linux命令分析文件-排序-统计(sort, uniq, awk)

image

1、升序排序且列举相同的数据的数目,相同的只显示一次。

  1. [root@localhost udp]# sort sortdata.txt | uniq -c
  2.       1 3366614912
  3.       1 9787115242907
  4.       2 9787115253293
  5.       2 9787302115199
  6.       2 9787302142201

2、打印重复条数在两条以上的整行数据
  1. [root@localhost udp]# sort sortdata.txt | uniq -c | awk '$1>=2 {print $0}'
  2.       2 9787115253293
  3.       2 9787302115199
  4.       2 9787302142201
  5. [root@localhost udp]#

条件: “$1>=2”: 第一列的数据>=2

print $0 : 打印整行

下面是只打印第一列和同时打印第一、二列的情况:

image

将结果写到一个文件中:

  1. [root@localhost udp]# sort sortdata.txt | uniq -c | awk '$1>=2 {print $1,$2}' >sortdata01.txt


image


3、uniq [选项] 文件

    说明:这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。c 显示输出中,在每行行首加上本行在文件中出现的次数。


4、grep和管道符“|”

grep 搜索、匹配、过滤

管道符“|”:将管道左边的输出作为管道右边的输入。

image

image

命令:

  1. [root@localhost udp]# history|grep "make clean"

    作用是从历史上输入的命令刻录中过滤所有“make clean”命令


参考文献:

http://blog.chinaunix.net/uid-26960488-id-3215474.html

http://blog.csdn.net/ckstory/article/details/6229032

阅读(5396) | 评论(0) | 转发(0) |
0

上一篇:Linux awk命令详解

下一篇:awk BEGIN使用一例

给主人留下些什么吧!~~