用Linux Shell从网址列表里面提取域名

一次在某BBS上遇到有人问,怎么把一个网址列表中的域名提取出来。
网址列表形式为
http://x.xxx.xx/xxx/xx
其中有上千条数据 但是很多网址的域名是重复的,如http://a.bcd.com/1 ; http://a.bcd.com/2等等。
用linux下的sort 和 uniq,可以快速解决这个问题。
如网址列表为in.txt 我们要输出结果到out.txt可以使用如下的命令
cut -d '/' in.txt -f 3 | sort | uniq -c > out.txt
先用cut 将文件以”/”为分隔符切割 地区其中的第三列数据 ,也就是域名部分。
使用sort进行排序,将相同的域名排在一起
使用uniq把重复的域名去掉。参数-c的作用是对重复进行计数,并输出到结果中。
得到的结果:
cat out.txt
32 a.bcd.com
21 b.cde.com
………………

如需要转载请注明: 转载自eRic

原文地址: 用Linux Shell从网址列表里面提取域名

对文章有任何疑问,欢迎用各种方式提出。

5 Replies to “用Linux Shell从网址列表里面提取域名”

Comments are closed.