之前用bash实现过( ),不过那个不能在windows下使用,所以就写了个python版,也方便我以后使用……这里就不多介绍了,不懂的google下。
实现代码
#!/usr/bin/python''' File : count.py Author : Mike E-Mail : Mike_Zhang@live.com'''import sys,osextens = [".c",".cpp",".hpp",".h"]linesCount = 0filesCount = 0def funCount(dirName): global extens,linesCount,filesCount for root,dirs,fileNames in os.walk(dirName): for f in fileNames: fname = os.path.join(root,f) try : ext = f[f.rindex('.'):] if(extens.count(ext) > 0): print 'support' filesCount += 1 print fname l_count = len(open(fname).readlines()) print fname," : ",l_count linesCount += l_count else: print ext," : not support" except: print "Error occur!" passif len(sys.argv) > 1 : for m_dir in sys.argv[1:]: print m_dir funCount(m_dir)else : funCount(".") print "files count : ",filesCountprint "lines count : ",linesCountraw_input("Press Enter to continue")
使用方法
1、针对本目录
./count.py
2、统计多个目录
./count.py /tmp ~
运行效果
好,就这些了,希望对你有帮助。