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

[文件操作] 请教 删除全盘的指定文件或文件夹的BAT代码?

[复制链接]
发表于 2013-5-24 15:11:53 | 显示全部楼层 |阅读模式
本帖最后由 tangqingfu 于 2013-5-29 18:41 编辑

请教在全盘删除指定文件或文件夹的代码该如何编写?
1、比如说在硬盘上有名为“试卷辅助工具.exe”的文件,请教如何编写代码将其删除?
2、如果在硬盘或U盘上有名为“试卷辅助工具.exe”的文件,请教如何编写代码将其删除?
3、如果硬盘上有名为“试卷辅助工具”的文件夹,请教如何编写代码将其删除?
4、如果硬盘或U盘上有名为“试卷辅助工具”的文件夹,请教如何编写代码将其删除?
这里所说的U盘盘符是动态,比如说在一台电脑上U盘是G盘,在别一台电脑上U盘可能是H盘
发表于 2013-5-24 15:16:03 | 显示全部楼层
 楼主| 发表于 2013-5-24 15:23:33 | 显示全部楼层
回复 2# Batcher
主要是想搜索后将其删除,请教如何编写代码?
发表于 2013-5-24 15:57:36 | 显示全部楼层
回复 3# tangqingfu


    把搜索的代码里面那个用来显示结果的echo改成删除命令
 楼主| 发表于 2013-5-24 16:07:41 | 显示全部楼层
回复 4# Python

呵呵,不懂得如何修改,能否请Python兄出手相助?(能否考虑指定文件夹或指定文件为隐藏的情况)
 楼主| 发表于 2013-5-24 19:01:46 | 显示全部楼层
求助ing……
 楼主| 发表于 2013-5-27 12:50:50 | 显示全部楼层
  1. @echo off
  2. for %%a in (c d e f g h) do (
  3. for /f "delims=" %%b in ('dir/ad/s/b "%%a:"^|findstr /i "\test$"') do (
  4. rd /s /q "%%b" >nul 2>nul
  5. ))
复制代码
上面的代码是全盘查找"test"文件夹,找到后删除文件夹"test"。此批处理命令支持在子目录中查找文件夹"test",且无论文件夹"abc"内是否还有其他文件都将被删除。
可是也会把其他名称中含有test的其他文件夹也删除,请教如何修改代码,使之只删除以test开头的文件夹或仅删除名为“test”的文件夹(精确删除)?
发表于 2013-5-27 17:00:45 | 显示全部楼层
  1. findstr /ie "\\test"
复制代码

评分

参与人数 1技术 +1 收起 理由
tangqingfu + 1 乐于助人

查看全部评分

 楼主| 发表于 2013-5-27 23:23:27 | 显示全部楼层
回复 8# terse
谢谢,测试通过!
能否说说二者的不同?
发表于 2013-5-27 23:46:36 | 显示全部楼层
回复 9# tangqingfu
\ 这个要转义 的
 楼主| 发表于 2013-5-28 21:14:52 | 显示全部楼层
回复 11# 处理学习
  1. @echo off
  2. for %%a in (c d e f g h) do (
  3. for /f "delims=" %%b in ('dir/ad/s/b "%%a:"^|findstr /ie "\\test"') do (
  4. rd /s /q "%%b" >nul 2>nul
  5. ))
复制代码
这个不会误删。误删能否恢复,我也不清楚,可能很难!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 07:16 , Processed in 0.023360 second(s), 11 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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