我想创建一个批处理文件删除或删除文件夹C:\temp\root\students\type1
,其子文件夹和所有文件。
我拥有的文件夹和文件如下:
C:\temp
C:\temp\root
C:\temp\root\students
C:\temp\root\tutors
C:\temp\root\students\type1
C:\temp\root\students\type2
C:\temp\root\tutors\type1
C:\temp\root\tutors\type2
C:\temp\root\students\type1\details.txt
C:\temp\root\students\type1\assignment1
C:\temp\root\students\type1\assignment1\results.txt
文件夹C:\temp\root\students\type1\assignment1
在批处理文件中指定。
我想去一个文件夹/目录,删除或删除我的批处理文件(test.bat)中的C:\temp\root\students\type1
。
请帮我解决一下这个。
用这个:
rd /s /q C:\temp\root\students\type1
它将递归删除文件和文件夹,小心,没有提示。这是一个很好的老树木的替代品。最好。
编辑:在你的记事本中,用这个内容创建你的mygoodbatch.bat:
md C:\temp
md C:\temp\root
md C:\temp\root\students
md C:\temp\root\tutors
md C:\temp\root\students\type1
md C:\temp\root\students\type2
md C:\temp\root\tutors\type1
md C:\temp\root\tutors\type2
md C:\temp\root\students\type1\details.txt
md C:\temp\root\students\type1\assignment1
md C:\temp\root\students\type1\assignment1\results.txt
rd /s /q C:\temp\root\students\type1
(md是make dir dos命令,所以所有以它开头的行都在创建文件夹 - 最后一行是你的级别4AA的那一行)
将此批处理保存在磁盘的根目录上,然后运行它。我真的希望这就是你想要的。我还没有理解的是:你正在创建一个目录结构,同时排除4AA级......是吗?
您可以使用for循环来获取给定文件夹的父文件夹:
set target_dir=C:\temp\root\students\type1.test\assignment1
for %%a in ("%target_dir%") do (
echo Removing %%~dpa%
rd /s/q %%~dpa%
)