Löschen von Verzeichnissen / Pfad zu lang / delfolders.cmd

Kürzlich hatte ich das Problem das beim Löschen eines Verzeichnis der RD (remove directory) Befehl mit der Meldung abgebrochen hat, dass der Verzeichnispfad zu lang wäre.

Ein wenig Recherche im Internet brachte mich immer wieder auf dieselbe Vorgehensweise den Pfad mit Subst oder net share & net use zu mappen und dann zu löschen. Diese Empfehlungen haben mich nicht besonders zufrieden gestellt, da ich nicht wirklich absehen konnte wie lange der Pfad wirklich ist und ich somit bei rund 5000 Zeichen einige Iterationen durchlaufen muss.

Also habe ich weiter gesucht und bin auf folgendes Batch-Script gestoßen, welches Robocopy (seit Windows Vista im OS integriert – und davor als Download vorhanden) verwendet um die Verzeichnisse und Dateien zu löschen. Das Script arbeitet zwar langsam – hat aber letztendlich die Aufgabe erledigt, alle Verzeichnisse und Dateien konnten gelöscht werden.

Das Script ist nicht von mir – dennoch sehr hilfreich und deshalb möchte ich es hier nicht vorenthalten:

@echo off 
if {%1}=={} @echo Syntax: DelFolder FolderPath&goto :EOF 
if not exist %1 @echo Syntax: DelFolder FolderPath - %1 NOT found.&goto :EOF

setlocal 
    set folder=%1 
    set MT="%TEMP%DelFolder_%RANDOM%" 
    MD %MT% 
    RoboCopy %MT% %folder% /MIR 
    RD /S /Q %MT% 
    RD /S /Q %folder% 
endlocal 

Cheers, b!