for /f "delims=" %%f in (7profiledeletelist.txt) do rd /s /q "%%f" PAUSE exit
7profiledeletelist.txt
C:\Users\1* C:\Users\2* C:\Users\3* C:\Users\4* C:\Users\5* C:\Users\6* C:\Users\7* C:\Users\8* C:\Users\9* C:\Users\M* C:\Users\T*
阅读7profiledeletelist.txt文件后,bat文件不能删除任何内容。
如果我删除*并写出目录的确切名称,它运作良好。 我想删除用户目录中以M , T , 1开头的所有文件夹,直到9 。
7profiledeletelist.txt或批处理脚本如何更改以使其正常工作? 在批处理脚本中是否有错误的代码?
根据这个问答 , rmdir不接受通配符。 但是,发出以下命令:
for /D %f in (1*) do rmdir %f /s /q
删除从1开始的所有文件夹。
根据这个Q&A ,可以使用批量逐行读取文件。
rmdir_regex.bat
@echo off for /f "tokens=*" %%a in (7profiledeletelist.txt) do ( for /D %%f in (%%a) do rmdir %%f /s /q )