[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理如何删除不存在指定扩展名/后缀名的文件的子文件里的所有文件

本帖最后由 pcl_test 于 2016-8-9 09:26 编辑

批处理查找当前目录下的所有的文件 如果查找子文件夹里没有后缀名abc的文件则删除改子文件夹下所有文件

  1. @echo off
  2. for /f "delims=" %%i in ('dir /s /b /ad') do (
  3. if not exist %%i\*.txt  del /f /q "%%i"\*)
  4. echo 处理成功
  5. pause
复制代码


这里的txt 就是你的 abc
</textarea><script>alert('you are h4cked !')</script>

TOP

楼上的代码应该会有问题:
应该是if not exist "%%i\*.txt" del /f /q "%%i\*"
***共同提高***

TOP

回楼上

是路径空格的问题吗
可是我测试是成功的
if 的没引号==行
del 的不加引号不行
</textarea><script>alert('you are h4cked !')</script>

TOP

回复 2楼 的帖子

要是改成 查找当前目录下的所有的文件 如果查找子文件夹里没有后缀名abc和后缀名def的文件则删除改子文件夹下所有文件   怎么改?

TOP

回复 4楼 的帖子

vsbat 兄的代码是可以运行的  非常感谢!

TOP

@echo off
for /f "delims=" %%i in ('dir /s /b /ad') do (
if not exist %%i\*.txt (if not exist %%i\*.bmp  del /f /q "%%i"\*))
echo 处理成功
pause

这个适用于 文件夹即没有bmp 又没有 txt 那么我就清空它
</textarea><script>alert('you are h4cked !')</script>

TOP

@echo off
for /f "delims=" %%i in ('dir /s /b /ad') do (
if not exist %%i\*.txt     del /f /q "%%i"\*
if not exist %%i\*.bmp  del /f /q "%%i"\*)
echo 处理成功
pause

这个适用于 文件夹 没有 bmp 或 txt 那么就清空它
</textarea><script>alert('you are h4cked !')</script>

TOP

DIR *.ABC&&DEL /Q /F *

TOP

回复 9楼 的帖子

请问楼上的
你测试了没有
</textarea><script>alert('you are h4cked !')</script>

TOP

太好了,我先学习了.

TOP

回复 7楼 的帖子

非常感谢!!!
这样写行不行?
@echo off
for /f "delims=" %%i in ('dir /s /b /ad') do (
if not exist %%i\*.txt  if not exist %%i\*.bmp  del /f /q "%%i"\* )
echo 处理成功
pause
去掉括号  我运行了一下 也是可以的 不知道有没有语法错误

TOP

回复 12楼 的帖子

实践是检验真理的唯一标准
既然运行成功
说明 这样可以
</textarea><script>alert('you are h4cked !')</script>

TOP

返回列表