sed解析url的域名

echo http://3g.163.com/touch/article.html?docid=C6SM5BG40005877U | sed -n 's/^https\{0,1\}:\/\/\([^\/]*\)\/.*/\1/p'

-n 只输出匹配的行

/p 打印结果

mark:

用反斜杠转义的地方跟普通的正则是反过来的,即表示普通字符不加转义,正则的功能字符需转义;

?表示0或1个不生效。无奈只能用{0,1};

.*? 表示非贪婪模式不生效。例子中用了[^/] 代替

统计域名

cat url_file.txt | sed -n 's/^https\{0,1\}:\/\/\([^\/]*\)\/.*/\1/p' | sort | uniq -c | sort -n -r  | awk 'OFS="\t"{print $1,$2}' > domain_sort.txt 

后面加上  awk 'OFS="\t"{print $1,$2}' 是为了结果复制到 Excel 方便

猜你喜欢

转载自blog.csdn.net/afeiqiang/article/details/53745876