Linux-awk和sort处理字符串

题目:

有一个文件b.txt

1 http://www.baidu.com/index.html
2 http://www.google.com/index.html
3 http://www.baidu.com/get.html
4 http://www.baidu.com/set.html
5 http://www.google.com/index.html
6 http://www.yahoo.com.cn/put.html
7 http://www.yunpan.com/img
8 http://iot.com.cn/index
9 http://iot.com.cn/get

要求将域名截取出来,并且统计出重复域名出现的次数:

1    2 iot.com.cn
2    3 www.baidu.com
3    2 www.google.com
4    1 www.yahoo.com.cn
5    1 www.yunpan.com 

代码如下:

awk -F '/' '{print $3}' b.txt | sort | uniq -c

讲解:

awk的基本用法

# 格式
$ awk 动作 文件名
# 示例
$ awk '{print $0}' demo.txt
#-F 参数,指定分隔符,单引号中是指定的分割字段
$ awk -F '/’

 $0 代表的是一整行的数据

sort和uniq结合使用:

uniq的参数-c ,表示在每列旁边显示该行重复的次数

 

参考文档:

http://www.ruanyifeng.com/blog/2018/11/awk.html

http://man.linuxde.net/awk

http://man.linuxde.net/sort

http://man.linuxde.net/uniq

 

posted @ 2019-06-17 21:28  豆芽花花儿酱  阅读(1071)  评论(0编辑  收藏  举报