Board logo

标题: [文件操作] 【已解决】批处理怎样删除含指定字符的文件夹? [打印本页]

作者: bataiping    时间: 2018-8-23 11:31     标题: 【已解决】批处理怎样删除含指定字符的文件夹?

本帖最后由 bataiping 于 2018-9-5 22:09 编辑

文件夹结构:
根目录下有
0001-0001-0001
0001-0002-0001
0001-0002-0002
...
等若干文件夹

每个文件夹下又都有如0001-0001-0001_01、02、03(除了最后几位,前面部分和上级文件夹一致),这种结构很多个子文件夹,每个文件夹中都有一些txt文件

现在想实现的效果是

删除所有文件夹中,最后3位是“_88”的子文件夹(不管里面有没有txt文件),还有,不确定是否每个文件夹下都有_88结尾的文件夹

请老师们指教一下,如果能带上注释就更感激不尽了
作者: xczxczxcz    时间: 2018-8-23 20:02

  1. @echo off & setlocal enabledelayedexpansion
  2. for /d /r %1 %%a in (*) do (set "str=%%~nxa" & if /i "!str:~-3!" == "_88" rd /s/q "%%a")
  3. pause
复制代码
把根目录文件夹拖到批上来。
把 XXX_88 文件下的一切文件和文件夹删除,不确定要删的请不要偿试。
作者: WHY    时间: 2018-8-23 21:29

for /d /r %%i in (*_88) do echo rd /s /q "%%i" 2>nul
作者: bataiping    时间: 2018-8-28 19:40

回复 2# xczxczxcz

测试没有问题了,多谢多谢
作者: bataiping    时间: 2018-8-28 19:41

回复 3# WHY
不知道为什么没成功,我再琢磨一下,多谢了
作者: Batcher    时间: 2018-8-29 08:25

回复 5# bataiping


    把echo删掉试试




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2