note icon indicating copy to clipboard operation
note copied to clipboard

删除空文件夹

Open aiastia opened this issue 2 years ago • 0 comments

python

import os

def remove_empty_folders(folder):
    # 遍历文件夹中的所有子文件夹和文件
    for root, dirs, files in os.walk(folder, topdown=False):
        # 删除空文件夹
        for dir_name in dirs:
            dir_path = os.path.join(root, dir_name)
            if not os.listdir(dir_path):  # 检查文件夹是否为空
                try:
                    os.rmdir(dir_path)
                    print(f"已删除空文件夹:{dir_path}")
                except OSError as e:
                    print(f"删除文件夹时出错:{dir_path}, 错误信息:{e}")

# 获取当前文件夹路径
current_folder = os.getcwd()

# 调用函数清理空文件夹
remove_empty_folders(current_folder)

bat

@echo off

setlocal

REM 设置当前文件夹路径
set "current_folder=%cd%"

REM 调用递归函数清理空文件夹
call :remove_empty_folders "%current_folder%"

endlocal
exit /b

:remove_empty_folders
REM 遍历文件夹中的所有子文件夹和文件
for /f "delims=" %%d in ('dir /ad /b /s "%~1"') do (
    REM 检查文件夹是否为空
    dir /a /b "%%d" | findstr "^" >nul
    if errorlevel 1 (
        REM 删除空文件夹
        rmdir "%%d"
        echo 已删除空文件夹:"%%d"
    )
)
exit /b

aiastia avatar Sep 08 '23 07:09 aiastia