标题: [文件操作] 【求助】批处理 删除当前文件夹下所有空文件夹 [打印本页]
作者: lowying 时间: 2017-12-27 08:54 标题: 【求助】批处理 删除当前文件夹下所有空文件夹
在网上找了很多批处理用了都没效果.像这个
我有一个文件夹,文件夹下经常产生许多空目录,我想在这个文件夹根目录下建一个批处理。执行这个批处理就会帮我删除当前文件夹下所有空目录。。。
希望有大神能帮我写一段批处理,不胜感激。
作者: lowying 时间: 2017-12-27 09:56
问题已解决
@echo off
Setlocal enabledelayedexpansion
set "ml=%~dp0"
cd /d "%ml%"
for /f "delims=" %%i in ('dir /ad/b %ml%\*') do (
set xh=0
for /f "delims=" %%a in ('dir /s/b "%ml%\%%i"') do if not "%%~nxa"=="" set xh=1
if !xh!==0 (
attrib -h -s -r "%%~i"
rd /q "%%~i")
)
作者: ygqiang 时间: 2017-12-27 10:02
回复 2# lowying - @echo off&title 清理空目录
- set/p Pan=请输入要清理盘符(只需输入字母即可),回车确认:
- cls&echo 即将开始清理。。。&ping 0 -n "3">nul
- cd /d %Pan%:\
- for /f "delims=" %%a in ('dir /ad/s/b') do (
- dir /a-d/s/b "%%~a\*" >nul 2>nul
- if errorlevel 1 (
- title 正在清理空目录: “%%~a”,请等待。。。
- echo 空文件夹: “%%~a”为空,准备删除。。。
- rd /s/q "%%~a
- if exist "%%~a" (
- title 目录: “%%~a”被占用,无法删除。
- echo 文件夹被占用,无法删除。
- ping 0 -n "4">nul
- ) else (
- echo 空文件夹: “%%~a”已被清理。
- ping 0 -n "1">nul
- )
- )
- )
- set msg=%Pan% 盘空文件夹清理完成。请按任意键退出。
- title %msg%&echo %msg%
- pause>nul
- exit
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |