Python/Python for Windows

[Python] 하위 디렉토리 파일크기와 라인 수 추출

Pydole 2018. 4. 12. 01:29

 

파이썬 하위 디렉토리 파일크기와 라인 수 추출

 

소스코드 진단을 위해 실행파일의 크기와 라인 수(개행 포함)를 추출해야 할 일이 생겼다.

 

코드설명

  - 하위 디렉토리 순위.

  - 필터 확장자는 Pass. 반대로 필요한 확장자만 역으로도 검색할 수 있다.

  - 출력파일은 엑셀에서 ; 구분자로 불러오기 할 수 있다. 

 

import os

def filemtime():
    global cnt
    global text
    os.chdir(path)
    with open(filename,'r', errors='replace') as f:
        lines = f.readlines()
        for cnt, line in enumerate(lines,1):
            pass

    text = path+';'+filename+';'+ext+';'+str(os.path.getsize(filename))+';'+ str(cnt) + '\n'  # sep ';' File
    printFile()

def printFile():
    global text
    with open(outfile, 'a' , errors='replace') as f: 
        f.write(text)

filters = ('.otf' )   # filter File Name Extension

for (path, dir, files) in os.walk(rootpath):       # search rootpath
    for filename in files:
        ext = os.path.splitext(filename)[-1]
        if ext in filters:
            pass

        else:
            filemtime()