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 -rf
davor 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 , ls
um eine Liste von Dateien zu generieren. Öffnen Sie Ihren bevorzugten Texteditor und bearbeiten Sie die Liste. Fügen Sie del
am Anfang jeder Zeile hinzu. Ersetzen Sie alle /
durch \
und ändern Sie den Pfad von /cache
in 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 .bat
Datei 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.