Löschen aller Order in Ordner außer ...
Hallo,
ganz neu auf dem Gebiet bin ich ja nun nicht mehr und insofern hab ich schon einen Schnippsel .. denn dann aber gleich mit Fehler inklusive *gg*
Kann mir bitte wer sagen warum da der Ordner nicht gefunden werden kann bzw. warum der mir bei diesem Ordner die 3 schluckt, Ordner heißt nämlich Test382
Danke! | Schönes Wochenende!
lg mc-dy
ganz neu auf dem Gebiet bin ich ja nun nicht mehr und insofern hab ich schon einen Schnippsel .. denn dann aber gleich mit Fehler inklusive *gg*
C:\Dokumente und Einstellungen\admin>for /f "delims=Test003" %i in ('dir /b /ad /o-n "C:\temp\Test"') do rd /s /q "C:\temp\Test\Test%i"
C:\Dokumente und Einstellungen\admin>rd /s /q "C:\temp\Test\Test58941+6"
C:\Dokumente und Einstellungen\admin>rd /s /q "C:\temp\Test\Test4156"
C:\Dokumente und Einstellungen\admin>rd /s /q "C:\temp\Test\Test82"
Das System kann die angegebene Datei nicht finden.
C:\Dokumente und Einstellungen\admin>rd /s /q "C:\temp\Test\Test2"
C:\Dokumente und Einstellungen\admin>rd /s /q "C:\temp\Test\Test1"
Kann mir bitte wer sagen warum da der Ordner nicht gefunden werden kann bzw. warum der mir bei diesem Ordner die 3 schluckt, Ordner heißt nämlich Test382
Danke! | Schönes Wochenende!
lg mc-dy
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 156301
Url: https://administrator.de/forum/loeschen-aller-order-in-ordner-ausser-156301.html
Ausgedruckt am: 22.05.2025 um 05:05 Uhr
4 Kommentare
Neuester Kommentar

moin,
schau dich mal um - entweder in deiner Dosbox nach for /? oder und hier nach einer sehr aktuellen Anleitung zum Thema Schleifen.
btw:
bedeutet - akzeptiere als Trennzeichen
Ist also nicht nur völliger Bullshit und weil du eben die 3 als Trennzeichen drin hast....
Gruß
schau dich mal um - entweder in deiner Dosbox nach for /? oder und hier nach einer sehr aktuellen Anleitung zum Thema Schleifen.
btw:
warum der mir bei diesem Ordner die 3 schluckt
"delims=Test003"- T
- e
- s
- t
- 0
- 3
Ist also nicht nur völliger Bullshit und weil du eben die 3 als Trennzeichen drin hast....
for /f %i in ('dir /b /ad /o-n "C:\temp\Test"') do rd /s /q "C:\temp\Test\Test%i"
Gruß
Hallo mc-doubleyou!
Das Mysterium hinsichtlich "Test382" hat T-Mo ja schon geklärt - wenn ich nun noch vermute, dass mit "Test003" jener (einzelne) Ordner gemeint ist, der nicht gelöscht werden soll, würde ich zu folgender Vorgangsweise raten:
Das "
... und falls der Ordnername nur mit "Test003" beginnen muss, einfach "
Grüße
bastla
Das Mysterium hinsichtlich "Test382" hat T-Mo ja schon geklärt - wenn ich nun noch vermute, dass mit "Test003" jener (einzelne) Ordner gemeint ist, der nicht gelöscht werden soll, würde ich zu folgender Vorgangsweise raten:
for /f "delims=" %i in ('dir /b /ad "C:\temp\Test"^|findstr /x /i /v /c:"Test003"') do @echo rd /s /q "C:\temp\Test\%i"
@echo
" nur, damit beim Testen nix Schlimmes passiert, und das "/c:
", falls Du (oder ein Leser dieses Threads) die Nummer mal für einen Ordner mit im Namen enthaltenem Leerzeichen abziehen will(st) ...... und falls der Ordnername nur mit "Test003" beginnen muss, einfach "
/b
" anstelle von "/x
" ...Grüße
bastla
Hallo mc-doubleyou!
Teile davon kennst Du ja schon, aber der Vollständigkeit halber:
Gehe die Ergebnisse (siehe nächsten Teil) zeilenweise durch und zerlege die Zeilen nicht in Einzelteile ("
Liste alle Ordner (directories, daher "
... filtere aber das Ergebnis vor der Weiterverarbeitung noch so, dass nur alle gesamten ("
und lösche die jeweiligen Ordner kommentarlos ("
Grüße
bastla
Teile davon kennst Du ja schon, aber der Vollständigkeit halber:
for /f "delims=" %i in
delims=
" legt fest, dass es kein - also auch nicht die defaultmäßigen Leerzeichen und TAB - Trennzeichen geben soll, anhand dessen die Zerlegung erfolgen könnte)('dir /b /ad "C:\temp\Test"
/ad
") von "C:\temp\Test" auf und gebe nur den Namen (nicht auch zB Datum, ...) aus, ...^|findstr /x /i /v /c:"Test003"')
/x
") Zeilen ohne Berücksichtigung von Groß/Kleinschreibung ("/i
"), welche nicht ("/v
") "Test003" lauten (mit "/c:
" wird nur für den Fall vorgesorgt, dass einmal im Suchbegriff Leerzeichen vorhanden wären), übrig bleibendo @echo rd /s /q "C:\temp\Test\%i"
/q
") samt allen enthaltenen Dateien / Unterordnern ("/s
") - da in "%i" nur der Ordnername enthalten ist, muss hier auch nochmals der Pfad "C:\temp\Test" angegeben werden.Grüße
bastla