2016-07-30 12 views
1

ich ein Skript gefunden, das alle Ordner außer einer gewissen einScript löschen Sie alle Ordner außer

for /d %i in ("C:\test\*") do if /i not "%~nxi"=="test2" rd /q "%i" 

löscht Wie ändern Sie dies mehrere Ordner hinzufügen, dass ich das Löschen nicht wollen?

+0

Dies funktioniert nicht für mich für 1 Ordner. –

Antwort

1
@echo off 
set "list=test1 test2 test3" 
setlocal enableDelayedExpansion 
set "delete=0" 
pushd "C:\test\" 
for /d %%i in (*) do (
    set "delete=1" 
    for %%# in (%list%) do (
    if /i "%%i" equ "%%#" (
     set "delete=0" 
     echo %%i will be not deleted 
    ) 
) 
    if !delete!==1 (
    rd /s /q "%%i" 
) 

) 
popd 
+0

Vielen vielen Dank – Phairplay

+0

hallo tut mir leid, es löscht nicht die anderen Ordner es sagt "das Verzeichnis ist nicht leer unter jedem Ordner überprüfen – Phairplay

+0

@Phayplay Sie brauchen'/s' switch.Code bearbeitet. – npocmaka

Verwandte Themen