특정 폴더를 제외한 모든 폴더를 삭제하는 Python 코드 입니다.
아래 코드는 특정 폴더를 지정하고 그 폴더를 제외한 모든 폴더를 삭제하는 예제입니다.
import os
import shutil
def delete_all_folders_except(folder_to_keep, base_folder):
for root, dirs, files in os.walk(base_folder, topdown=False):
for name in dirs:
folder_path = os.path.join(root, name)
if folder_path != folder_to_keep: # 특정 폴더를 제외하고 삭제
shutil.rmtree(folder_path)
print(f"Deleted folder: {folder_path}")
# 폴더를 지정
folder_to_keep = '/path/to/keep'
base_folder = '/path/to/search'
# 특정 폴더를 제외하고 모든 폴더 삭제
delete_all_folders_except(folder_to_keep, base_folder)
위 코드에서 /path/to/keep은 유지하고자 하는 폴더의 경로를, /path/to/search는 검색을 시작할 기본 폴더의 경로를 나타냅니다.
이 코드는 os.walk() 함수를 사용하여 모든 하위 폴더를 반복하고, 특정 폴더를 제외하고 모든 폴더를 삭제합니다.
shutil.rmtree() 함수를 사용하여 폴더를 삭제합니다.
이 코드를 실행하면 folder_to_keep 변수에 지정된 폴더를 제외한 모든 하위 폴더가 삭제됩니다.
주의: 이 코드를 사용할 때 주어진 경로에 대한 권한이 있어야 합니다. 또한, 주어진 경로가 존재하는지 확인해야 합니다.