Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 파일을 복사하는 방법 – shutil 모듈 완벽 가이드

shutil 모듈로 파일 복사하기

파이썬에서는 표준 라이브러리의 shutil 모듈을 사용하면 파일 하나뿐만 아니라 폴더 전체도 손쉽게 복사할 수 있습니다. 별도의 설치 없이 import만 하면 바로 사용할 수 있어 파일 관리 작업에 매우 유용합니다.

shutil.copy() 기본 사용법

shutil.copy(source, destination)을 호출하면 source 경로에 있는 파일이 destination 경로의 폴더로 복사됩니다. 이때 source와 destination은 모두 문자열 형태의 경로여야 합니다.

만약 destination이 폴더가 아니라 파일 이름이라면, 그 이름은 복사된 파일의 새로운 이름으로 사용됩니다. 또한 이 함수는 복사가 완료된 파일의 전체 경로를 문자열로 반환합니다.

>>> import shutil
>>> # 같은 폴더에 다른 이름으로 파일 복사
>>> shutil.copy('original.txt', 'duplicate.txt')
'/home/username/duplicate.txt'
>>> shutil.copy('original.txt', 'my_folder/duplicate.txt')
'/home/username/my_folder/duplicate.txt'

메타데이터까지 복사하려면?

파일의 생성·수정 시간이나 권한 같은 메타데이터까지 그대로 유지하며 복사하고 싶다면 shutil.copy2()를 사용하는 것이 좋습니다. 반면, 폴더 전체(디렉터리 트리)를 통째로 복사해야 할 때는 shutil.copytree() 함수를 활용하면 됩니다.