日期:2014-05-16  浏览次数:20970 次

shell如何过滤文本中相同单词
如test.txt中有如下内容
good
good
better
better
best
best
you
know
.
.
.
如何把相同的单词提取出来啊?谢谢!(用grep sed awk find等都可以。)

------解决方案--------------------
sort test.txt | uniq -c | awk '{if($1>1) print $2}'
------解决方案--------------------
for i in `cat sourcefile |sort -r|cut -c1-1|uniq`
do
grep ^$i sourcefile |sed q |tee -a targetfile
done
------解决方案--------------------
awk 'NR==FNR{a[$1]++}NR>FNR&&a[$1]>1' filename filename

ps:filename就是同一个文件名字
------解决方案--------------------
Perl code
$ awk '{if(a[$1]++){print $1}}' test
good
better
best

------解决方案--------------------
awk 'a[$1]++{print $1}' yourfile