Board logo

标题: [文件操作] [已解决]批处理怎样保留两个文件夹其它删除? [打印本页]

作者: shuaige100    时间: 2011-2-9 17:01     标题: [已解决]批处理怎样保留两个文件夹其它删除?

  1. start explorer "C:\Documents and Settings\All Users\「开始」菜单\程序"
复制代码
上面路径里有两个文件夹【包括它们里面的内容是不能删的】,一个是管理工具文件夹,一个是启动文件夹
其它的文件和文件夹都要删除,这代码该怎么写

[ 本帖最后由 shuaige100 于 2011-2-10 08:19 编辑 ]
作者: CrLf    时间: 2011-2-9 17:16

这样不知道行不行:
  1. @echo off
  2. for /f "delims=" %%a in (
  3. 'dir /b "C:\Documents and Settings\All Users\「开始」菜单\程序"^|findstr /v /rc"^|findstr /v /r /c:"^管理工具$" /c:"^启动$" /c:"^Startup$"') do (
  4. rd /q /s "%%a"||del /q /f "%%a"
  5. )
复制代码

确实,先前没考虑到这一点,已修正

[ 本帖最后由 zm900612 于 2011-2-9 21:57 编辑 ]
作者: Batcher    时间: 2011-2-9 20:53     标题: 回复 2楼 的帖子

不严谨,如果其它文件夹或文件的名字包含那两个词就删不掉了。
作者: shuaige100    时间: 2011-2-9 22:50     标题: 回复 3楼 的帖子

我想大概可以用了,明天我就试试
作者: hanyeguxing    时间: 2011-2-10 07:30

不考虑隐藏属性的问题
  1. @echo off
  2. cd/d "%ALLUSERSPROFILE%\「开始」菜单\程序"
  3. set ""启动"=="
  4. set ""管理工具"=="
  5. for /d %%a in (*) do if not defined "%%a" rd /s/q "%%a"
  6. for %%a in (*) do del /f "%%a"
复制代码





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