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

[文本处理] 批处理删除文件和文件夹如何显示 处理了多少条结果?

[复制链接]
发表于 2024-6-30 10:46:20 | 显示全部楼层 |阅读模式
比如说  一个bat  里面包含
  1. del /s/q "C:\Windows\apppatch\shellFeatureInbox.sdb"
  2. del /s/q "C:\Windows\hh.exe"
  3. del /s/q "C:\Windows\mib.bin"
  4. del /s/q "C:\Windows\system.ini"
  5. rd /S /Q "C:\Windows\UUS\x86"
  6. rd /S /Q "C:\Windows\schemas\TSWorkSpace"
  7. rd /S /Q "C:\Windows\schemas\VpnProfile"
复制代码
想显示出来的结果 为

删除成功了XXX条   失败了XX条
或者
删除成功XXX个文件夹  失败XX个文件夹
发表于 2024-6-30 12:38:09 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-6-30 12:48 编辑

回复 1# lovekix

  1. @echo off &setlocal
  2. for %%F in (
  3.         "C:\Windows\apppatch\shellFeatureInbox.sdb"
  4.         "C:\Windows\hh.exe"
  5.         "C:\Windows\mib.bin"
  6.         "C:\Windows\system.ini"
  7. ) do (del /s/q "%%~F" 2>nul)&(if exist "%%~F" (set/a m+=1) else set/a n+=1)
  8. echo,删除文件》成功 %n% 个,失败 %m% 个
  9. for %%D in (
  10.         "C:\Windows\UUS\x86"
  11.         "C:\Windows\schemas\TSWorkSpace"
  12.         "C:\Windows\schemas\VpnProfile"
  13. ) do (rd /s/q "%%~D" 2>nul)&(if exist "%%~D" (set/a i+=1) else set/a k+=1)
  14. echo,删除目录》成功 %k% 个,失败 %i% 个
  15. endlocal&pause&exit/b
复制代码
建议先用一组测试文件或目录测试代码,通过之后再用于实况。删除批量文件或目录须慎重...
发表于 2024-6-30 13:44:06 | 显示全部楼层
回复 1# lovekix
二楼代码已订正...
发表于 2024-6-30 16:10:43 | 显示全部楼层
  1. del /s /q "C:\Windows\hh.exe"
复制代码

如果删除文件不涉及windows子目录下的hh.exe,无需/s /q 开关。
如果真实意图正如代码所示,可尝试下列代码。

删除文件并计数
  1. @echo off
  2. for %%a in (
  3. "C:\Windows\apppatch\shellFeatureInbox.sdb"
  4. "C:\Windows\hh.exe"
  5. "C:\Windows\mib.bin"
  6. "C:\Windows\system.ini"
  7. ) do (
  8.         for /f "delims=" %%i in ('2^>nul dir /b /s /a-d "%%~a"') do (
  9.                 del "%%i" 1>nul 2>nul
  10.                 if not exist "%%i" (
  11.                         set /a n+=1
  12.                 ) else (
  13.                         set /a m+=1
  14.                         echo 删除失败[%%i]
  15.                 )
  16.         )
  17. )
  18. echo 删除成功 %n% 删除失败 %m%
  19. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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