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

[文件操作] 怎么批量删除*font*文件夹

[复制链接]
发表于 2020-4-29 14:45:50 | 显示全部楼层 |阅读模式
RD貌似不支持通配符
而且*font*文件夹  所在的文件夹,文件夹极多,枚举可能不现实

举一个失败的例子方便理解吧
RD /s /q "c:\Windows\WinSxS\*font*"
发表于 2020-4-29 17:30:21 | 显示全部楼层
本帖最后由 不知道是谁 于 2020-4-29 17:31 编辑
  1. for /f "delims=" %%i in ('dir /ad /b /s %WinDir%\WinSxS\*font*') do echo %%i
复制代码
测试通过后替换 do 后面的
发表于 2020-4-30 11:38:23 | 显示全部楼层
回复 2# 不知道是谁


正好有类似匹配文件夹问题,用到了,感谢。

for /f "delims=*" %%i in ('dir /ad /b /s %PATH%\* ') do (
move "%%i" "%PATH%"

上面这个语句直接把最深一级的子目录移动到当前目录了。
如果我只想把当前目录下的第一级子目录移动到当前目录,请问有办法吗?  谢谢
发表于 2020-4-30 12:31:00 | 显示全部楼层
回复 3# pcxnice


    %PATH%是系统默认环境变量,不建议自定义变量也使用%PATH%
发表于 2020-4-30 14:05:26 | 显示全部楼层
回复 4# Batcher


感谢指点。

用PATH是为了适用性,用的时候比较多。都是复制到该目录下直接就用 了,所以没有修改为绝对路径。
 楼主| 发表于 2020-4-30 15:40:04 | 显示全部楼层
回复 2# 不知道是谁


    如果要反过来,除了*font*文件夹以外的文件夹全部删除,怎么写呢
发表于 2020-4-30 18:39:59 | 显示全部楼层
回复  不知道是谁


正好有类似匹配文件夹问题,用到了,感谢。

for /f "delims=*" %%i in ('dir /a ...
pcxnice 发表于 2020-4-30 11:38



    去掉 /s 试试
发表于 2020-4-30 18:40:33 | 显示全部楼层
回复  不知道是谁


    如果要反过来,除了*font*文件夹以外的文件夹全部删除,怎么写呢
hentai87 发表于 2020-4-30 15:40
  1. @echo off
  2. set str=%WinDir%\WinSxS
  3. for /f "delims=" %%i in ('dir /ad /b /s %str%^|find /v "*font*"') do echo %%i
  4. pause
复制代码
 楼主| 发表于 2020-4-30 19:12:23 | 显示全部楼层
本帖最后由 hentai87 于 2020-4-30 19:20 编辑

回复 8# 不知道是谁


D:\ZT\msmg9.8\Mount\Install\Windows\SystemApps>set str=D:\ZT\msmg9.8\Mount\Install\Program Files\WindowsApps

D:\ZT\msmg9.8\Mount\Install\Windows\SystemApps>for /F "delims=" %i in ('dir /ad /b /s "D:\ZT\msmg9.8\Mount\Install\Program Files\WindowsApps"|find /v "Microsoft.UI.Xaml*"') do RD /S /Q "%i"

D:\ZT\msmg9.8\Mount\Install\Windows\SystemApps>RD /S /Q "D:\ZT\msmg9.8\Mount\Install\Program Files\WindowsApps\Microsoft.UI.Xaml123123123"

D:\ZT\msmg9.8\Mount\Install\Windows\SystemApps>RD /S /Q "D:\ZT\msmg9.8\Mount\Install\Program Files\WindowsApps\New folder"

D:\ZT\msmg9.8\Mount\Install\Windows\SystemApps>pause
失败了,删了不该删的Microsoft.UI.Xaml123123123
发表于 2020-5-1 17:40:53 | 显示全部楼层
回复 9# hentai87
  1. @echo off
  2. set str="D:\ZT\msmg9.8\Mount\Install\Program Files\WindowsApps"
  3. for /f "delims=" %%i in ('dir /ad /b /s %str%^|findstr /v "Microsoft.UI.Xaml*"') do echo %%i
  4. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 18:33 , Processed in 0.019971 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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