找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 14252|回复: 8

[文件操作] 【求助】删除空目录批处理命令

[复制链接]
发表于 2024-7-30 17:46:47 | 显示全部楼层 |阅读模式
请教,在删除空目录后,如何将删除结果自动保存为一个txt文件呢?谢谢
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. mode con cols=66 lines=20
  4. set /a sum=0
  5. echo.
  6. use>nul
  7. echo.
  8. echo ------------------------------------------------------------------
  9. echo.
  10. for /l %%i in (1 1 10) do (
  11. for /f "delims=" %%i in ('dir /ad /b /s') do (
  12. dir /b "%%i"|findstr .>nul||rd "%%i"&&echo 成功删除空文件夹:%%i&&set /a sum=sum+1
  13. )

  14. )
  15. echo.
  16. echo ------------------------------------------------------------------
  17. echo.
  18. echo      共删除%cd%目录下 空文件夹个数:%sum%
  19. echo.
  20. echo.
  21. #echo    按任意键退出
  22. #pause>nul
  23. set sum=
  24. exit
复制代码
发表于 2024-7-30 19:59:37 | 显示全部楼层
  1. @echo off
  2. rem 保存为ansi
  3. cd /d "%~dp0"
  4. set n=0
  5. (
  6.         for /f "delims=" %%i in ('dir /b /s /ad ^|sort /r') do (
  7.                 rd "%%i" 2>nul
  8.                 if not exist "%%i" (
  9.                         set /a n+=1
  10.                         echo 成功删除空文件夹:%%i
  11.                 )
  12.         )
  13.         call echo 共删除%cd%目录下 空文件夹个数:%%n%%
  14. )>"log.txt"
  15. pause
复制代码
 楼主| 发表于 2024-7-30 20:58:00 | 显示全部楼层
本帖最后由 少马石 于 2024-7-30 21:02 编辑
77七 发表于 2024-7-30 19:59



导出log文件。能不能改一下。自动命名为logx年x月x日x时x分.txt。。log中最好记录一下删除目录的具体路径和名称
发表于 2024-7-30 22:17:53 | 显示全部楼层
回复 3# 少马石

  1. @echo off
  2. rem 保存为ansi
  3. cd /d "%~dp0"
  4. set n=0
  5. for /f %%a in ('wmic os get localdatetime ^|findstr [0-9]') do (
  6.         set t=%%a
  7. )
  8. (
  9.         for /f "delims=" %%i in ('dir /b /s /ad ^|sort /r') do (
  10.                 rd "%%i" 2>nul
  11.                 if not exist "%%i" (
  12.                         set /a n+=1
  13.                         echo 成功删除空文件夹,路径:[%%~dpi] 名称:[%%~nxi]
  14.                 )
  15.         )
  16.         call echo 共删除%cd%目录下 空文件夹个数:%%n%%
  17. )>"log%t:~0,4%年%t:~4,2%月%t:~6,2%日%t:~8,2%时%t:~10,2%分.txt"
  18. pause
复制代码
 楼主| 发表于 2024-7-31 06:20:03 | 显示全部楼层
本帖最后由 少马石 于 2024-7-31 06:23 编辑

回复 4# 77七
谢谢你的热情帮助,不过发现一点问题。
2楼的命令日志是乱码,4楼的命令提示语法错误。


发表于 2024-7-31 07:05:45 | 显示全部楼层
回复 5# 少马石


   
把批处理文件保存为ansi编码格式试试。

评分

参与人数 1技术 +1 收起 理由
少马石 + 1 感谢帮助

查看全部评分

发表于 2024-7-31 08:27:45 | 显示全部楼层
回复 5# 少马石


请参考Q-04把bat文件保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
如图所示:
http://bbs.bathome.net/thread-67347-1-1.html#pid273985
 楼主| 发表于 2024-7-31 19:17:38 | 显示全部楼层
回复 6# 77七
果然如此。。再次感谢,完美解决。
 楼主| 发表于 2024-7-31 19:19:24 | 显示全部楼层
回复 7# Batcher
用NotePad转码后完美解决,谢谢指导
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 22:06 , Processed in 0.021410 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表