|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!反省文件下第二列是不是有反复,且有几行是反复的,并提掏出反复的行的第二列
实践事情中是上百万行,列也比这多,这里只是列出一小局部罢了,详细以下:cnyunwei.log
09207626130043677071754330635
09217024230025087053091151035
09224506130063282091425235063
09273105230015182070149221035
09209105230025385102421246035
09209106130045383111012281035
09219806130153278063057261635
09222623130014587060800151033
09200123130045183062724109065
09264702130155182070149225635
09251123130021385121100261035
09280306130031286011500311357
09273401230015383111012281035
09264714130025188032492708065
09265505230024487060434681035
2009085654891487050806222083
2009106334244277030833411183
7091012020081385121100261035
09330012634503379041247274258
70910805700213801126122X1335
7092000770433389052503431035
09330012514791385121100265258
7092130770163389121283291035
7092130720323386121523261335
7092130720023387051585231935
7092140770033390010156821035
==>>以下两种***能够到达一样的效果
awk-F""{print$2}cnyunwei.log|sort-r|uniq-c|grep-v"1"
awk-F""{print$2}cnyunwei.log|sort-r|uniq-c|awk{if($1>1){print$0}}
实行后的了局:
2538311101228
2518207014922
3138512110026
注:
awk-F""{print$2}cnyunwei.log|sort-r|uniq-c
==>>意义是提掏出第二列并过滤反复,且列出反复行数
扩大一下,把以上了局地点行整行内容掏出==>>把下面掏出的了局一时存于temp.log文件中,再读取这个文件来取原文件里的整行内容
awk-F""{print$2}cnyunwei.log|sort-r|uniq-c|grep-v"1"|awk{print$2}>>temp.log
或
awk-F""{print$2}cnyunwei.log|sort-r|uniq-c|awk{if($1>1){print$0}}|awk{print$2}>>temp.log
==>>
vicnyunwei.sh
#!/bin/sh
SOCFILENAME=cnyunwei.log
FILENAME=temp.log
if[-e$FILENAME];then
rm-rf$FILENAME
fi
awk-F""{print$2}$SOCFILENAME|sort-r|uniq-c|grep-v"1"|awk{print$2}>>$FILENAME
whilereadLINE
do
grep$LINE$SOCFILENAME
done<$FILENAME
exit0
更复杂的***兼并成一行下令弄定:
awk-F""{print$2}cnyunwei.log|sort-r|uniq-c|awk{if($1>1){print$0}}|awk{print$2}|whilereadoutput;dogrep$outputcnyunwei.log;done
都是事情中的实战Shell,人人回帖增补完美!
欢迎大家来到仓酷云论坛! |
|