[파이썬] shutil `shutil.rmtree()`: 디렉토리 트리 삭제하기

파이썬에서 shutil 모듈은 파일과 디렉토리 작업을 쉽게 처리할 수 있도록 도와줍니다. shutil.rmtree()는 특히 디렉토리를 삭제하는 데에 유용한 함수입니다. 이 함수를 사용하면 디렉토리 전체를 삭제할 수 있습니다.

shutil.rmtree() 함수 사용하기

다음은 shutil.rmtree() 함수를 사용하여 디렉토리 트리를 삭제하는 예제입니다.

import shutil

# 디렉토리 경로
directory_path = '/path/to/directory'

# 디렉토리 삭제
shutil.rmtree(directory_path)

위의 예제에서 directory_path는 삭제하려는 디렉토리의 경로입니다. shutil.rmtree() 함수를 호출하면 해당 경로의 디렉토리가 완전히 삭제됩니다. 삭제할 디렉토리 안에 다른 파일이나 하위 디렉토리가 있더라도 모두 삭제됩니다.

함수의 반환값

shutil.rmtree() 함수는 삭제한 파일과 디렉토리의 개수를 포함하는 튜플을 반환합니다. 하지만 일반적으로 실제로 반환된 값은 사용하지 않습니다. 함수가 정상적으로 실행되면 예외가 발생하지 않으므로 반환값을 확인할 필요가 없습니다.

삭제할 디렉토리가 존재하지 않는 경우

shutil.rmtree() 함수는 삭제할 디렉토리가 존재하지 않는 경우에도 정상적으로 실행됩니다. 따라서 삭제하려는 디렉토리의 존재 여부를 미리 확인할 필요는 없습니다. 단, 디렉토리가 없는 경우에는 예외가 발생하지 않으므로, 디렉토리를 삭제하기 전에 존재 여부를 확인하는 것이 좋습니다.

주의사항

shutil.rmtree() 함수는 디렉토리를 완전히 삭제하기 때문에, 삭제되는 디렉토리 안에 중요한 파일이나 데이터가 있는지 확인하는 것이 중요합니다. 디렉토리를 삭제하기 전에 백업을 해두는 것이 좋습니다.

또한, shutil.rmtree() 함수는 삭제 작업을 되돌릴 수 없습니다. 따라서 신중하게 사용해야 합니다.

결론

shutil.rmtree() 함수는 파이썬에서 디렉토리 트리를 삭제하는 간편하고 강력한 방법입니다. 디렉토리를 삭제해야 할 때에 유용하게 활용할 수 있습니다. 단, 삭제 대상 디렉토리 안에 중요한 파일이나 데이터가 있는지 확인하고, 삭제 작업을 되돌릴 수 없다는 점을 항상 염두에 두어야 합니다.