批处理怎么实现删除多个子文件夹中指定文件外的其他文件

比如我想保留1.*(1.DOC,1.TXT,1.ppt等等文件名相同后缀不同的文件),但存在于多个子文件夹中,怎么做批处理才能把除1.*外的其他文件删除。同一文件夹的我搜到了,可含有多个子文件夹的怎么办?

选择指定的文件(不删除的) ,然后选择 编辑--->反选。。。。右键删除追问

我需要自动运行的,所以需要做批处理bat

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-05-04
假设1.*在a文件夹(或a的子文件夹下)
md aaa
for /f "delims=" %%i in ('dir /s /b 1.*') do (
xcopy /s %%i aaa\)
rd /s /q a
ren aaa a追问

试了下,做到了提取文件夹里的这些文件,但是其子文件夹并未保留。或者能不能这么做,复制整个文件夹过来,然后删除1.*之外的所有文件但不删除文件夹

追答

@echo off
for /f "delims=" %%i in ('dir /s /b /a-d *.*') do (
echo %%i|find "1." && del /f /q %%i)

追问

for /f "delims=" %%i in ('dir /s /b /a-d e:\a\*.*') do (
echo %%i|findstr/v "1." && del /f /q %%i)
做了下修改,之前在网上找的。成了,谢啦

本回答被提问者采纳
相似回答