标题: 10元求一个批量删除 [打印本页]
作者: zlbang 时间: 2017-3-15 22:31 标题: 10元求一个批量删除
本帖最后由 zlbang 于 2017-3-15 22:35 编辑
具体报酬:10元人民币
支付方式:支付宝,网银转账,微信
联系方式:QQ:269979606
有效期限:2017年3月30号之前
需求描述:
(1)系统环境(XP中文繁体版)
(2)需求:比如C盤,d盤根目录下有aabbcc,aaddee,wwww的文件夾,該文件夾內都有一個【hjkl】的文件夾。只刪除【aa】字符开头的文件夾下的【hjkl】文件夾。而保留其他文件夾里的【hjkl】文件夾。
就是只刪除【aa】开头文件夾下的指定文件,而不影響到其他文件夾下的同名文件。
作者: nidnil 时间: 2017-3-15 23:05
本帖最后由 nidnil 于 2017-3-16 00:54 编辑
如果题意是:
文件夹必须符合,第二层是以 aaa 或 bbb 开头,并且 其第四层 含有 wwww 的文件夹,对 wwww 进行删除,忽略其他文件夹和文件。- @echo off
-
- REM 文件夹总数多,但是越接近根文件夹,数量越少的情况
- for /d %%b in (
- "D:\*"
- ) do for /d %%c in (
- "%%~b\aaa*" "%%~b\bbb*" ::?"这里添加第二层的匹配方式"
- ) do for /d %%d in (
- "%%~c\*"
- ) do for /d %%e in (
- "%%~d\wwww" ::?"此处添加第四层的匹配方式,如果用 exist 则需要判断是否为文件夹"
- ) do rd /s /q "%%~e"
复制代码
保存成 cmd 执行
如果文件较少- for /d /r D:\ %%b in (
- wwww
- ) do for /f "usebackq tokens=3,5 delims=\" %%c in (
- '"%%b"'
- ) do if "%%~d"=="wwww" set "_%%c=%%~b"
-
- for %%a in (
- aaa bbb
- ) do for /f "tokens=1* delims==" %%b in (
- `set _%%a`
- ) do rd /s /q "%%~c"
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |