listug
Goto Top

Alle Ordnerinhalte bis auf einen mit batch datei löschen

Ich finde einfach keine Lösung

Hallo ich würde gerne im Tempordner (C:\Users\Listug\Temp)

Die Unterordner:

C:\Users\Listug\Temp\Alpha
C:\Users\Listug\Temp\Betha
C:\Users\Listug\Temp\Gamma
C:\Users\Listug\Temp\Delta
C:\Users\Listug\Temp\Listug
C:\Users\Listug\Temp\Epsilon
C:\Users\Listug\Temp\Zeta
C:\Users\Listug\Temp\Eta
C:\Users\Listug\Temp\Theta
C:\Users\Listug\Temp\Iota
C:\Users\Listug\Temp\Kappa
C:\Users\Listug\Temp\Lambda
C:\Users\Listug\Temp\My
C:\Users\Listug\Temp\Ny
C:\Users\Listug\Temp\Xi
C:\Users\Listug\Temp\Omikron
C:\Users\Listug\Temp\Pi
C:\Users\Listug\Temp\Rho
C:\Users\Listug\Temp\Sigma
C:\Users\Listug\Temp\Tau
C:\Users\Listug\Temp\Ypsilon
C:\Users\Listug\Temp\Phi
C:\Users\Listug\Temp\Chi
C:\Users\Listug\Temp\Psi
C:\Users\Listug\Temp\Omega

Es soll bei allen den Inhalt löschen nur bei Listug nicht!
Dies sollte jedoch nicht einzeln sein sondern via schlaufe.
So dass ich nicht alle einzeln leeren muss.

Ich habe:
rd /s /q C:\Users\Listug\Temp\Alpha
md C:\Users\Listug\Temp\Alpha

jedoch ist das ein zu langer .bat
Würde mich auf antworten freuen

Content-ID: 152865

Url: https://administrator.de/forum/alle-ordnerinhalte-bis-auf-einen-mit-batch-datei-loeschen-152865.html

Ausgedruckt am: 15.01.2025 um 18:01 Uhr

60730
60730 12.10.2010 um 15:34:45 Uhr
Goto Top
moin,

for /f %a in ('"dir /b /S /AD C:\Users\Listug\Temp\"') do if /i not %a==C:\Users\Listug\Temp\Listug echo rd /s/q %a && md %a  

Die üblichen Sicherheitsmassnahmen, das erzeugt nur was es machen würde, macht aber nix. (Der Will nur spielen, wenn es beissen soll, das Echo weglasern)
Als Batch zwei % statt einem.

via Schlaufe Österreicher?

Gruß
Listug
Listug 12.10.2010 um 16:12:00 Uhr
Goto Top
nein via Schleife Schweizer.

Mein Fehler...

Vielen dank das klappt besser als erwartet face-smile
60730
Lösung 60730 12.10.2010, aktualisiert am 20.01.2014 um 16:56:20 Uhr
Goto Top
Salü,

das war eine Schleife, basierend auf deinem Vorschlag face-wink

Eine Schlaufe würde dann so aussehen:
for /f %a in ('"dir /b /S /AD C:\Users\Listug\Temp\"') do if /i not %a==C:\Users\Listug\Temp\Listug echo del %a\*.*  

Denn die obige Schleife löscht gnadenlos alles, wie unterunterverzeichnise und auch eventuell gesetzte NTFS Rechte.

Bitte den grünen Haken nicht vergessen face-wink Hoddärface-wink

Gruß