域名排序 sort uniq awk

时间:2023-12-03 00:00:02

[root@web01 ~]# sort [-fbMnrtuk] [file or stdin]

选项与参数:
-f :忽略大小写的差异,例如 A 与 a 视为编码相同;
-b :忽略最前面的空格符部分;
-M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法;
-n :使用『纯数字』进行排序(默认是以文字型态来排序的);
-r :反向排序;
-u :就是 uniq ,相同的数据中,仅出现一行代表;
-t :分隔符,默认是用 [tab] 键来分隔;
-k :以那个区间 (field) 来进行排序的意思

[root@web01 ~]# uniq [-icu]

选项与参数:

-i :忽略大小写字符的不同;

-c :进行计数

-u :只显示唯一的行

按单词排序

[root@web01 data]# sed 's#[,\.]# #g' < paixu.txt |tr " " "\n"|sort|uniq -c|sort -rn
[root@web01 data]# sed 's#[,\.]# #g' < paixu.txt |tr " " "\n"|sort -n|uniq -c

 按字母逆序排列

[root@web01 data]# sed 's#[,.]##g' paixu.txt |grep -o "."|sort|uniq -c|sort -nr

  

 

已知题目查看域名并按计数进行排序

[root@web01 ~]# cat /oldboy/yuming.txt 
http://www.baidu.com/index.html
http://www.baidu.com/1.html
http://post.baidu.com/index.html
http://mp3.baidu.com/index.html
http://www.baidu.com/3.html
http://post.baidu.com/2.html

[root@web01 oldboy]# awk -F "/" '{print $3}' yuming.txt |sort|uniq -c   第三列进行计数统计
1 mp3.baidu.com
2 post.baidu.com
3 www.baidu.com
[root@web01 oldboy]# awk -F "/" '{print $3}' yuming.txt |sort -r|uniq -c 进行第三列的逆序排列
3 www.baidu.com
2 post.baidu.com
1 mp3.baidu.com

 使用AWK 命令进行数组排列,命令说明为:自定义分隔符“/”进行排列查找第三列进行排序 ym 为自定义内容可随意更改

[root@web01 oldboy]# awk -F '/' '{i[$3]++}END{for (ym in i) print ym,i[ym]}' yuming.txt
www.baidu.com
post.baidu.com
mp3.baidu.com
[root@web01 oldboy]# awk -F '/' '{i[$3]++}END{for (ym in i) print i[ym],ym}' yuming.txt
www.baidu.com
post.baidu.com
mp3.baidu.com