如何从带有 bat 文件的目录中删除多个特定文件夹?
How can i delete multiple specific folders from a directory with a bat file?
有点像上一个问题的延续,但我有 570 个文件夹,其中一些文件夹包含另一个名为“autosaves”的文件夹,我想创建一个 bat 文件来找到并删除它们(自动保存文件夹,而不是包含自动保存文件夹的实际文件夹),但经过反复试验无济于事,我想我会回到这里,因为我上次取得了很好的成绩。
所以基本上。
MainFolder
---ExampleFolder1 (does not contain an autosaves folder)
---ExampleFolder2 (contains an autosaves folder)
---ExampleFolder3 (contains an autosaves folder)
---ExampleFolder4 (does not contain an autosaves folder)
我需要这个变成:
MainFolder
---ExampleFolder1 (does not contain an autosaves folder)
---ExampleFolder2 (does not contain an autosaves folder)
---ExampleFolder3 (does not contain an autosaves folder)
---ExampleFolder4 (does not contain an autosaves folder)
所以如果有人知道那就太好了:)
FOR /f "delims=" %%b IN ('dir /s /b /ad "u:\your files" ^|sort /r') DO IF /i "%%~nxb"=="autosave" ECHO RD /s /q "%%b"
其中 u:\your files
被您的目录替换。
完整查找所有目录名称,将它们倒序排列,如果叶名为 autosave
,则将其删除。
rd
命令仅 echo
用于测试目的。验证后,删除 echo
关键字以激活。
列表按相反顺序排序,因此包含其他目录的任何 autosave
目录都在这些子目录之后处理,因此代码不应尝试删除 already-deleted 目录的子目录。
NB 此代码将删除树中所有名为 autosave
的子目录,因此子目录 example\something\anotherthing\autosave\somethingelse
将在 anotherthing
[ 之后删除=20=]
有点像上一个问题的延续,但我有 570 个文件夹,其中一些文件夹包含另一个名为“autosaves”的文件夹,我想创建一个 bat 文件来找到并删除它们(自动保存文件夹,而不是包含自动保存文件夹的实际文件夹),但经过反复试验无济于事,我想我会回到这里,因为我上次取得了很好的成绩。
所以基本上。
MainFolder
---ExampleFolder1 (does not contain an autosaves folder)
---ExampleFolder2 (contains an autosaves folder)
---ExampleFolder3 (contains an autosaves folder)
---ExampleFolder4 (does not contain an autosaves folder)
我需要这个变成:
MainFolder
---ExampleFolder1 (does not contain an autosaves folder)
---ExampleFolder2 (does not contain an autosaves folder)
---ExampleFolder3 (does not contain an autosaves folder)
---ExampleFolder4 (does not contain an autosaves folder)
所以如果有人知道那就太好了:)
FOR /f "delims=" %%b IN ('dir /s /b /ad "u:\your files" ^|sort /r') DO IF /i "%%~nxb"=="autosave" ECHO RD /s /q "%%b"
其中 u:\your files
被您的目录替换。
完整查找所有目录名称,将它们倒序排列,如果叶名为 autosave
,则将其删除。
rd
命令仅 echo
用于测试目的。验证后,删除 echo
关键字以激活。
列表按相反顺序排序,因此包含其他目录的任何 autosave
目录都在这些子目录之后处理,因此代码不应尝试删除 already-deleted 目录的子目录。
NB 此代码将删除树中所有名为 autosave
的子目录,因此子目录 example\something\anotherthing\autosave\somethingelse
将在 anotherthing
[ 之后删除=20=]