Zip Dateien mit bestimmten Inhalten löschen per Batch
[Edit] Geschlossen:
Wir hier: "Automatisches Verschieben von Dateiinhalten nach Abfrage"
https://www.administrator.de/index.php?content=506e70888a85c8f91d7fc9333 ... weitergeführt
[/Edit Biber]
Dank der Hilfe hier ,habe ich mein Problem beinahe gelöst und brauche sozusagen nur noch einen kleinen Schubser um die letzte Kleinigkeit auch noch hinzubekommen.
Ich möchte bestimmte Zip Dateien die Dateien mit bestimmten Dateiendungen beinhalten automatisch löschen lassen.
Andere Zip Dateien in diesem Verzeichnis sollen nicht davon betroffen sein.
Ich habe es mit 2 Lösungsansätzen probiert und keine hat zufriedenstellend funktioniert:
Lösung 1:
for %%z in ("d:\temp\*.zip") do @(
For %%i in (xls doc wav db) do del "%%z" *."%%i)
Es werden jedoch alle Zip Dateien gelöscht, egal welchen Inhaltes.
Wo ist der Fehler ?
Lösung 2:
for /f %%i in ('findstr /g:c:\temp\liste.ini /i /m d:\temp\*.zip') do del %%i >nul
Dies funktioniert in soweit, daß er alle gewünschten Zip Dateien löscht bis auf solche die ein Leerzeichen im Dateinamen haben.
Wie lässt sich das lösen ?
2tes Problem:
In in der Datei Liste.ini angebenen Zeichenfolgen beinhalten nur zb xls ,d.h es werden auch Dateien gelöscht die xls im Namen haben und nicht als Dateiendung.
Wie kann ich erreichen,daß nur Dateiendungen *.xls in der Liste.ini akzeptiert werden und auch nur die gelöscht werden.
Schon mal vielen Dank für die bereits geleistete Hilfe die mir schon jetzt meinen Alltag sehr erleichert hat.
Ach ja, noch ne kleine Frage:
Wie kann ich in einem Verzeichnis Dateien mit bestimmten Dateiendungen löschen lassen mit Ausnahme einiger bestimmter Dateien mit der gleichen Endung ?
mfg
Claus
Wir hier: "Automatisches Verschieben von Dateiinhalten nach Abfrage"
https://www.administrator.de/index.php?content=506e70888a85c8f91d7fc9333 ... weitergeführt
[/Edit Biber]
Dank der Hilfe hier ,habe ich mein Problem beinahe gelöst und brauche sozusagen nur noch einen kleinen Schubser um die letzte Kleinigkeit auch noch hinzubekommen.
Ich möchte bestimmte Zip Dateien die Dateien mit bestimmten Dateiendungen beinhalten automatisch löschen lassen.
Andere Zip Dateien in diesem Verzeichnis sollen nicht davon betroffen sein.
Ich habe es mit 2 Lösungsansätzen probiert und keine hat zufriedenstellend funktioniert:
Lösung 1:
for %%z in ("d:\temp\*.zip") do @(
For %%i in (xls doc wav db) do del "%%z" *."%%i)
Es werden jedoch alle Zip Dateien gelöscht, egal welchen Inhaltes.
Wo ist der Fehler ?
Lösung 2:
for /f %%i in ('findstr /g:c:\temp\liste.ini /i /m d:\temp\*.zip') do del %%i >nul
Dies funktioniert in soweit, daß er alle gewünschten Zip Dateien löscht bis auf solche die ein Leerzeichen im Dateinamen haben.
Wie lässt sich das lösen ?
2tes Problem:
In in der Datei Liste.ini angebenen Zeichenfolgen beinhalten nur zb xls ,d.h es werden auch Dateien gelöscht die xls im Namen haben und nicht als Dateiendung.
Wie kann ich erreichen,daß nur Dateiendungen *.xls in der Liste.ini akzeptiert werden und auch nur die gelöscht werden.
Schon mal vielen Dank für die bereits geleistete Hilfe die mir schon jetzt meinen Alltag sehr erleichert hat.
Ach ja, noch ne kleine Frage:
Wie kann ich in einem Verzeichnis Dateien mit bestimmten Dateiendungen löschen lassen mit Ausnahme einiger bestimmter Dateien mit der gleichen Endung ?
mfg
Claus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 44020
Url: https://administrator.de/contentid/44020
Ausgedruckt am: 17.11.2024 um 09:11 Uhr
1 Kommentar
Hallo Claus!
Die nicht zu löschenden Dateien müssen natürlich eine Gemeinsamkeit haben, die sie von allen anderen Dateien unterscheidet. Diese kannst Du dazu verwenden, sie vorübergehend mit einem Schreibschutz zu versehen, alle (anderen) zu löschen und danach den Schreibschutz wieder zu entfernen:
Die Umleitungen zum nul-Device entsorgen die entbehrlichen (Fehler-)Meldungen.
HTH
bastla
for /f %%i in ('findstr /g:c:\temp\liste.ini /i /m d:\temp\*.zip') do del "%%i" >nul
In den meisten Fällen ist es sinnvoll, Datei- bzw Pfadnamen (auf Verdacht) unter Anführungszeichen zu setzen; das könnte auch hier helfen.2tes Problem:
In in der Datei Liste.ini angebenen Zeichenfolgen beinhalten nur zb xls ,d.h es werden auch Dateien gelöscht die xls im Namen haben und nicht als Dateiendung.
Wie kann ich erreichen,daß nur Dateiendungen *.xls in der Liste.ini akzeptiert werden und auch nur die gelöscht werden.
Da ich derzeinicht zum Testen komme, nur eine Mutmaßung: Hast Du schon versucht, .xls (in Worten: Punkt xls) in die "liste.ini" zu schreiben?In in der Datei Liste.ini angebenen Zeichenfolgen beinhalten nur zb xls ,d.h es werden auch Dateien gelöscht die xls im Namen haben und nicht als Dateiendung.
Wie kann ich erreichen,daß nur Dateiendungen *.xls in der Liste.ini akzeptiert werden und auch nur die gelöscht werden.
Ach ja, noch ne kleine Frage:
Wie kann ich in einem Verzeichnis Dateien mit bestimmten Dateiendungen löschen lassen mit Ausnahme einiger bestimmter Dateien mit der gleichen Endung ?
Wie kann ich in einem Verzeichnis Dateien mit bestimmten Dateiendungen löschen lassen mit Ausnahme einiger bestimmter Dateien mit der gleichen Endung ?
Die nicht zu löschenden Dateien müssen natürlich eine Gemeinsamkeit haben, die sie von allen anderen Dateien unterscheidet. Diese kannst Du dazu verwenden, sie vorübergehend mit einem Schreibschutz zu versehen, alle (anderen) zu löschen und danach den Schreibschutz wieder zu entfernen:
attrib 2006-*.xls +r
del *.* /q 1>nul 2>nul
attrib 2006-*.xls -r
Die Umleitungen zum nul-Device entsorgen die entbehrlichen (Fehler-)Meldungen.
HTH
bastla