[파이썬] 파일의 디렉토리 내 파일 정리

파일 시스템을 다루는 프로그램에서 파일이나 디렉토리의 정리는 중요한 작업입니다. 특히 대규모 프로젝트에서는 파일의 구조와 조직화가 필수적입니다.

이번 글에서는 Python으로 디렉토리 내 파일을 정리하는 방법에 대해 알아보겠습니다.

특정 디렉토리 내의 파일 목록 가져오기

import os

def get_file_list(directory):
    file_list = []
    for root, dirs, files in os.walk(directory):
        for file in files:
            file_list.append(os.path.join(root, file))
    return file_list

위에 코드를 사용하면 특정 디렉토리 내의 모든 파일의 경로를 리스트로 반환할 수 있습니다.

파일을 특정 디렉토리로 이동하기

import shutil

def move_files(source_directory, destination_directory):
    file_list = get_file_list(source_directory)
    for file_path in file_list:
        shutil.move(file_path, destination_directory)

위 코드는 특정 디렉토리 내의 파일들을 다른 디렉토리로 이동시킵니다. shutil.move() 함수를 사용하여 파일을 이동할 수 있습니다.

특정 형식의 파일만 이동하기

만약 특정 형식의 파일들만 이동하고 싶다면, 파일 이름의 확장자를 검사하여 조건에 맞는 파일만 이동시킬 수 있습니다.

import shutil
import glob

def move_files_by_extension(source_directory, destination_directory, extension):
    file_list = glob.glob(source_directory + '/*.' + extension)
    for file_path in file_list:
        shutil.move(file_path, destination_directory)

위 코드는 move_files() 함수와 유사하지만, glob 모듈을 사용하여 특정 확장자를 가진 파일들만 이동시킵니다. *. 다음에 필요한 확장자를 추가하여 원하는 파일들만 이동할 수 있습니다.

디렉토리 생성

파일을 이동하고 정리하기 전에, 새로운 디렉토리를 생성해야할 때가 있습니다. 아래 코드는 create_directory() 함수를 사용하여 새로운 디렉토리를 생성하는 방법을 보여줍니다.

import os

def create_directory(directory):
    if not os.path.exists(directory):
        os.makedirs(directory)

os.makedirs() 함수를 사용하여 디렉토리를 생성할 수 있습니다. 이미 디렉토리가 존재하는지 확인한 후에 생성하는 것이 좋습니다.

마치며

파일의 디렉토리 내 파일 정리는 프로젝트의 구조를 관리하고 유지하는 데 필수적입니다. Python의 osshutil 모듈을 사용하면 쉽게 파일을 이동시키고 디렉토리를 생성할 수 있습니다. 이를 효과적으로 활용하여 프로젝트의 파일 구조를 관리하세요.