Wie lösche ich in Windows alle Dateien in Unterverzeichnissen, die einem bestimmten Platzhalter entsprechen?

Wie lösche ich in Windows alle Dateien in Unterverzeichnissen, die einem bestimmten Platzhalter entsprechen?

Ich möchte alle Dateien auf einem Windows-Server löschen, die diesem Platzhalter entsprechen:

E:\Cache\*\*\*_ROOT\a*_SYMBOL\wöchentlich*

Unter Linux könnte ich einfach ein rm -rfdavor setzen und es würde funktionieren. Wenn ich etwas Ähnliches unter Windows versuche, bekomme ich nur:

Die Syntax für Dateiname, Verzeichnisname oder Datenträgerbezeichnung ist falsch.

Irgendwelche Ideen, was ich tun kann?

Antwort1

VerwendenPower Shell, das in Win7 integriert ist

Beispielsweise würde rm -rf folgendermaßen übersetzt:

Remove-Item E:\Cache\*\*\*_ROOT\a*_SYMBOL\weekly* -force

Antwort2

Geben Sie den Ordner frei. Stellen Sie mit Linux eine Verbindung zur Freigabe her. Verwenden Sie , lsum eine Liste von Dateien zu generieren. Öffnen Sie Ihren bevorzugten Texteditor und bearbeiten Sie die Liste. Fügen Sie delam Anfang jeder Zeile hinzu. Ersetzen Sie alle /durch \und ändern Sie den Pfad von /cachein E:\. Fügen Sie Anführungszeichen um jeden Pfad ein, um ihn vor dem ^im Dateinamen zu schützen, und ändern Sie alle %in %%. Kopieren Sie den Inhalt in eine .batDatei und führen Sie diese aus.

Antwort3

Cygwinist für solche Dinge sehr nützlich, wenn Sie keinen Linux-Rechner haben, auf dem Sie es freigeben können. Nach der Installation können Sie den Linux-Befehl direkt in Ihren Windows-Ordnern ausführen.

verwandte Informationen