利用awk命令进行统计
现在有一个文件,文件里有N行,认为每行是一条记录的话,每条记录里都会有个关键字keywords=,我想取出keywords后的value(长字符串),这些value以&结...
现在有一个文件,文件里有N行,认为每行是一条记录的话,每条记录里都会有个关键字keywords=,我想取出keywords后的value(长字符串),这些value以&结束。
最后统计各value出现的次数。
请问这个怎么弄啊??用awk
如:
http://r.union.meituan.com/cps/bdt?url=http://bj.meituan.com/deal/9577241.html&tn=baidutuan_tg&baiduid=4acfbbf10ce8b20c63431ef54144209e
我想对关键字
url取值http://bj.meituan.com/deal/9577241.html
tn取值baidutuan_tg
baiduid取值4acfbbf10ce8b20c63431ef54144209e
然后放在同一个文件,成下列效果。
http://bj.meituan.com/deal/9577241.html baidutuan_tg 4acfbbf10ce8b20c63431ef54144209e
多谢关注
怪我没说清楚,比如现在有两条记录
http://r.union.meituan.com/cps/bdt?url=http://bj.meituan.com/deal/9577241.html&tn=baidutuan_tg&baiduid=4acfbbf10ce8b20c63431ef54144209e
http://r.union.meituan.com/cps/bdt?url=http://bj.meituan.com/deal/9577241.html&ignore=woshihanzi&tn=baidutuan_tg&baiduid=4acfbbf10ce8b20c63431ef54144209e
又怎么样处理?我想问的是怎么匹配到给定字符串key后的值value,并且已知其格式为key=value& 展开
最后统计各value出现的次数。
请问这个怎么弄啊??用awk
如:
http://r.union.meituan.com/cps/bdt?url=http://bj.meituan.com/deal/9577241.html&tn=baidutuan_tg&baiduid=4acfbbf10ce8b20c63431ef54144209e
我想对关键字
url取值http://bj.meituan.com/deal/9577241.html
tn取值baidutuan_tg
baiduid取值4acfbbf10ce8b20c63431ef54144209e
然后放在同一个文件,成下列效果。
http://bj.meituan.com/deal/9577241.html baidutuan_tg 4acfbbf10ce8b20c63431ef54144209e
多谢关注
怪我没说清楚,比如现在有两条记录
http://r.union.meituan.com/cps/bdt?url=http://bj.meituan.com/deal/9577241.html&tn=baidutuan_tg&baiduid=4acfbbf10ce8b20c63431ef54144209e
http://r.union.meituan.com/cps/bdt?url=http://bj.meituan.com/deal/9577241.html&ignore=woshihanzi&tn=baidutuan_tg&baiduid=4acfbbf10ce8b20c63431ef54144209e
又怎么样处理?我想问的是怎么匹配到给定字符串key后的值value,并且已知其格式为key=value& 展开
展开全部
把你的实际文本贴出来看看
[csy@db1 ~]$ cat 1.txt | awk -F"=" '{print $2,$3,$4}'| sed 's/&tn//g' | sed 's/&baiduid//'
http://bj.meituan.com/deal/9577241.htmlbaidutuan_tg 4acfbbf10ce8b20c63431ef54144209e
[csy@db1 ~]$ sed 's/&[a-z]*=/=/g' 1.txt| awk -F"=" '{print $2,$3,$4,$5}'
http://bj.meituan.com/deal/9577241.htmlbaidutuan_tg 4acfbbf10ce8b20c63431ef54144209e
http://bj.meituan.com/deal/9577241.htmlwoshihanzi baidutuan_tg 4acfbbf10ce8b20c63431ef54144209e
需要提前知道每行中key的最大个数
[csy@db1 ~]$ cat 1.txt | awk -F"=" '{print $2,$3,$4}'| sed 's/&tn//g' | sed 's/&baiduid//'
http://bj.meituan.com/deal/9577241.htmlbaidutuan_tg 4acfbbf10ce8b20c63431ef54144209e
[csy@db1 ~]$ sed 's/&[a-z]*=/=/g' 1.txt| awk -F"=" '{print $2,$3,$4,$5}'
http://bj.meituan.com/deal/9577241.htmlbaidutuan_tg 4acfbbf10ce8b20c63431ef54144209e
http://bj.meituan.com/deal/9577241.htmlwoshihanzi baidutuan_tg 4acfbbf10ce8b20c63431ef54144209e
需要提前知道每行中key的最大个数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询