Windows删除空文件夹脚本

一、功能

  • 设置目标目录的路径
    在这里插入图片描述

  • 删除空文件夹
    在这里插入图片描述

二、脚本源码

cls
@echo off
color 0A
title 清理空文件夹
chcp 936>nul 2>nul

::批处理文件所在目录的路径
set defaultPath=%~dp0
::%1获取拖动文件夹的路径
set pathVar=%~1
if "%pathVar%" neq "" set defaultPath=%pathVar%

::设置目标路径
echo.
echo *--------------------------------------------------------------------------*
echo *                                  初始化                                  *
echo *--------------------------------------------------------------------------*
echo * 路径设置提示:                                                           *
echo *   1.默认路径,就是批处理文件所在的路径                                   *
echo *   2.拖拽文件到bat批处理文件上执行脚本,会修改默认路径                    *
echo *   3.将目标文件夹拖拽到cmd窗口,可以完成其路径输入                        *
echo *   4.使用默认路径,可以回车跳过                                           *
echo *--------------------------------------------------------------------------*
echo.
echo 默认的路径:%defaultPath%
echo.
set /p currentPath="请输入你的目标文件路径:"

if "%currentPath%" equ "" set currentPath=%defaultPath%
echo 您输入目标文件路径:%currentPath%
pause

cls
echo.
echo * --------------------------------------*
echo *              执行删除操作             *
echo * --------------------------------------*
echo.
echo 是否继续进行删除操作?(y,继续执行;非y,放弃)
set /p flag=
if "%flag%" neq "y" exit
goto delEmptyDir

:delEmptyDir 删除空文件夹
cd /d %currentPath%
echo 开始遍历...
echo 遍历需要时间,请耐心等待...
for /f "delims=" %%a in ('dir /ad /b /s %currentPath% ^| sort /r') do (
	rd "%%~a">nul 2>nul & echo %%~a
)
echo 删除操作完成,OK
pause 

::以下部分不会被执行,留作笔记参考
goto skip
Setlocal enabledelayedexpansion
set currentPath=%~dp0
::!a! 是变量的意思,正常的应该是 %a%,在启动了延迟变量的情况下就要将%改为!
::使用xh=1标记有后缀名的文件
::attrib - 显示或更改文件属性。
::attrib携带参数,消除文件属性 【-h】(隐藏) 【-s】(系统) 【-r】(只读)
::if !xh!==0 (
::	attrib -h -s -r "%%~i"
::	rd /q "%%~i"
::)
echo 读取空文件夹列表:
for /f "delims=" %%i in ('dir /ad/b %currentPath%\*') do (
	set xh=0
	for /f "delims=" %%a in ('dir /s/b "%currentPath%\%%i"') do if not "%%~nxa"=="" set xh=1
	if !xh! == 0 (
		attrib -h -s -r "%%~i"
		echo %%~dpni
	)
)
echo ok
pause
:skip

三、脚本文件

获取链接:deleteEmptyDir.bat

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值