如何从文本中截取自己想有得数据并去重,统计,排序

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_36586564/article/details/84935682

关键的指令为:
awk为分割截取,sort为排序,uniq为去重,wc为统计,你需要单独去理解这些指令,然后通过管道进行数据传送

特别注意:
用uniq命令可以删除相邻的重复行:
uniq [file]
但如果一文本中有重复却不相邻的行则无法删除,需要结合sort命令:
sort [file]|uniq
等效的sort命令是:
sort -u [file]
去重复后统计:

sort needsort.txt |uniq |wc

语句为:
语句一:
先排序再去重

grep -rn '"字符串"' query_data.csv |awk -F" " '{ print $4 }'|awk -F "|" '{ print $4 }' | sort|uniq -c|sort

语句二:
去重并统计

grep -rn '"evo"' query_data.csv |awk -F "|" '{ print $4 }' | sort|uniq -c|sort -r|wc -l

语句三:
将文件夹下的所有文件写入同一个文件中:

for i in `ls`;do cat $i >>17-18.csv;done

语句四:
查找某文件夹下所有类型的文件重写至一个文件中

for i in `find /work/logger/prod/2018-12-09 -type f -name "*.blob"`;do cat $i >>20181208.log;done

猜你喜欢

转载自blog.csdn.net/weixin_36586564/article/details/84935682