简单的shell进行排序和统计。

在做BUG质量分析的时候,对于BUG分词的记过要进行排序和去重操作,故想到了用sort 和  uniq。

通过python去调用shell是非常方便的。

# -*- coding: utf-8 -*-
import os
import sys

def CWS_Statistics(flag,afile,bfile):
if not os.path.isfile(afile):
print "wordlist dose't exist !"
else:
if flag == "0":
os.system("sort -f "+afile+" | uniq -c | sort -k 1 -n -r | awk 'function trim(str){sub(/^[ ]*/,\"\",str);return str}{print trim($0)}' >> "+bfile)
elif flag == "1":
os.system("sort "+afile+" | uniq -c | sort -k 1 -n -r | awk 'function trim(str){sub(/^[ ]*/,\"\",str);return str}{print trim($0)}' | awk -F' ' '{if(length($2) != 1) print $0}' >> "+bfile)
pass
print "CWS_Statistics is OK! %s ==> %s" % (afile,bfile)


if __name__ == "__main__":
if len(sys.argv) == 4:
#print sys.argv
CWS_Statistics(sys.argv[1],sys.argv[2],sys.argv[3])
else:
print "Usage: python CWS_Statistics.py [flag] [wordlist] [resultfile]"



posted @ 2012-03-20 22:40  地瓜日记  阅读(563)  评论(0编辑  收藏  举报