Über die CMD nur einen Ordnerinhalt mit Unterordnern löschen
Hallo zusammen,
ich möchte gerne innerhalb von einem Ordner der auf C: liegt alles löschen.
Zum Testen habe ich diesen Ordner hier angelegt
c:\Test
ich möchte gerne eine Batchdateie schreiben, die alles was in dem Ordner Test (Dateien und Ordner) ist ohne nachfrage gnadenlos löscht.
mit dem Befehl "rd" löscht er das gesamte Oberverzeichnis also auch den Ordner "Test" was ich ja nicht möchte.
Mit den Befehlen del und erase löscht er nur Dateien und lässt die Ordner übrig.
Den RD Befehl habe ich so verwendet was aber auch den Ordner Test gelöscht hat:
rd c:\Test\ /s /q
Wie kann ich das Skript so schreiben das wirklich nur der Inhalt vom Test gelöscht wird?
Ich verwende Windows 7 Pro.
Danke für eure Antworten.
Lg
M.Marz
ich möchte gerne innerhalb von einem Ordner der auf C: liegt alles löschen.
Zum Testen habe ich diesen Ordner hier angelegt
c:\Test
ich möchte gerne eine Batchdateie schreiben, die alles was in dem Ordner Test (Dateien und Ordner) ist ohne nachfrage gnadenlos löscht.
mit dem Befehl "rd" löscht er das gesamte Oberverzeichnis also auch den Ordner "Test" was ich ja nicht möchte.
Mit den Befehlen del und erase löscht er nur Dateien und lässt die Ordner übrig.
Den RD Befehl habe ich so verwendet was aber auch den Ordner Test gelöscht hat:
rd c:\Test\ /s /q
Wie kann ich das Skript so schreiben das wirklich nur der Inhalt vom Test gelöscht wird?
Ich verwende Windows 7 Pro.
Danke für eure Antworten.
Lg
M.Marz
Please also mark the comments that contributed to the solution of the article
Content-Key: 291452
Url: https://administrator.de/contentid/291452
Printed on: May 9, 2024 at 17:05 o'clock
13 Comments
Latest comment
Powershell -Executionpolicy Bypass -Command "Remove-Item 'c:\test\*' -Force -Recurse"
oder mit Robocopy einen "leeren" Ordner ins Ziel mergen
robocopy c:\leer c:\test /MIR
Gruß grexit
??? Wieso ...? Hauptsache der Ordner ist hinterher leer, auf welche Weise ist doch schnurz piepe...
Zitat von @M.Marz:
sehr gut
Aber gibt es keinen Befehl der nur den Inhalt löschen kann ohne das ganze Verzeichnis?
sehr gut
Aber gibt es keinen Befehl der nur den Inhalt löschen kann ohne das ganze Verzeichnis?
for /f "delims=" %i in ('dir /b "C:\Test\*.*"') do rd /s /q "C:\Test\%i" 2>nul
Zitat von @ITvortex:
@ITvortex Damit werden aber keine Dateien im Root gelöscht rd kann als Argument nur Verzeichnisse aufnehmen, und mit deinem Filter *.* exkludierst du ja ebenfalls schon Verzeichnisse, das kann also nich Aber gibt es keinen Befehl der nur den Inhalt löschen kann ohne das ganze Verzeichnis?
for /f "delims=" %i in ('dir /b "C:\Test\*.*"') do rd /s /q "C:\Test\%i" 2>nul
Wenn dann so, für eine direkte Eingabe in der CMD (Bei einer Batch müssen die Prozentzeichen verdoppelt werden)
del C:\test /s /q & for /d %a in (C:\test\*) do rd "%a" /s /q
Den RD Befehl habe ich so verwendet was aber auch den Ordner Test gelöscht hat:
rd c:\Test\ /s /q
rd c:\Test\ /s /q
Hallo,
bei:
C:\Test\U1
C:\Test\U2
nimmst Du
rd /S /Q C:\Test
Gruß
Holger
Nö, hinterher ist aber das Verzeichnis C:\Test ebefalls wech, und das will er ja gerade verhindern Steht ja im Ursprungspost schon so!
Zitat von @122990:
Nö, hinterher ist aber das Verzeichnis C:\Test ebefalls wech, und das will er ja gerade verhindern
Bei mir kommt nur eine Fehlermeldung, dass er auf das Verzeichnis nicht zugreifen kann.Nö, hinterher ist aber das Verzeichnis C:\Test ebefalls wech, und das will er ja gerade verhindern
Möglicherweise liegts daran, dass ich den RD Befehl aus dem Verzeichnis C:\TEMP\Test heraus gestartet habe.
also bat so schreiben dass erst eine cd C:\Temp\Test in das Verzeichnis wechselt, dass erhalten bleiben soll und aus diesem verzeichnis dann alle Unterverzeichnisse löschen, dann wieder mit cd\
zurück in hauptverzeichnis
Möglicherweise liegts daran, dass ich den RD Befehl aus dem Verzeichnis C:\TEMP\Test heraus gestartet habe.
Jup das ist es logischerweise. Aber vermutlich ist das für den TO auch wieder nur ein "Umweg" so wie alles in Batch ein Umweg ist . Glaube jetzt hat der TO nun einige Lösungen ... da kann er sich die passende raus suchen.