【发布时间】:2015-03-07 02:53:17
【问题描述】:
我正在尝试使用批处理自动从我的用户区域中删除某些文件夹。我已选择使用if defined 技巧过滤所有应删除的文件夹。
但是,以下代码只是删除所有文件夹。
for /f "usebackq delims=|" %%f in (`dir /b /ad`) do (
set "true="
if not "%%f"=="Custom Office Templates" set true=1
if not "%%f"=="Desktop" set true=1
if not "%%f"=="Downloads" set true=1
if not "%%f"=="Favourites" set true=1
if not "%%f"=="Links" set true=1
if not "%%f"=="My Documents" set true=1
if not "%%f"=="My Music" set true=1
if not "%%f"=="My Pictures" set true=1
if not "%%f"=="My Videos" set true=1
if defined true (
rd %%f
)
)
请帮忙!
【问题讨论】:
-
请说明您所说的“不工作”是什么意思。如所写,您的代码将删除 every 目录。如果它正在这样做,那么您的代码正在“工作”。
-
Hm - 每个目录都设置为“1”...
-
您要删除列出的目录还是全部删除?
标签: batch-file command-line windows-7 command-prompt