Programming/Python

폴더의 이름을 일괄 변경하자

매직블럭 2020. 5. 27. 14:48

대용량의 데이터베이스를 사용하다보면 가끔 폴더의 이름을 일괄 변경하고 싶은 경우가 있다.

 

이럴경우 양이 많지 않으면 흔히 사용하는 DarkRenamer 등의 프로그램을 쓸수도 있지만

폴더/파일의 양이 많은 빅데이터를 다룰때는 이러한 프로그램이 감당을 못한다.

 

그래서 폴더명만 일괄적으로 변경하는 함수를 기록해 두고 필요할때 사용하자..

 


# -*- coding: utf-8 -*-
import sys
import os
from os import rename, listdir


def rename_folder(sRoot):
    # 현재 위치의 파일 목록
    files = listdir(sRoot)

    # 파일명에 번호 추가하기
    count = 0
    for name in files:

        # 파이썬 실행파일명은 변경하지 않음
        if sys.argv[0].split("\\")[-1] == name:
            continue

        new_name = "{0:05d}".format(count)
        rename(os.path.join(sRoot, name), os.path.join(sRoot, new_name))
        count += 1