skiing69
Goto Top

Per Batch Dateien löschen, aber die aktuellsten 2 Dateien lt. Datum im Dateinamen nicht löschen

Hallo,
ich möchte per Batch ein Script erstellen, dass alle Datein löscht,
- die mit "Verkauf" im Dateinahmen beginnen
- die aktuellsten 2 Dateien aber nicht löscht (maßgeblich ist das Datum im Dateinahmen)

Dateinamen z.B.:

"Verkauf 2016-02-16 12;15;12"    (löschen)  
"Verkauf 2016-02-17 12;15;12"    (löschen)  
"Verkauf 2016-02-18 12;15;12"    (nicht löschen)  
"Verkauf 2016-02-19 12;15;12"    (nicht löschen)  
"Vertreter 2016-02-16 12;15;12"    (nicht löschen)  
"Vertreter 2016-02-17 12;15;12"    (nicht löschen)  
"Vertreter 2016-02-18 12;15;12"    (nicht löschen)  

Leider finde ich keine Lösung für das Problem.

Vielen Dank für Eure Hilfe.

Content-ID: 297242

Url: https://administrator.de/contentid/297242

Ausgedruckt am: 26.11.2024 um 10:11 Uhr

114757
Lösung 114757 24.02.2016, aktualisiert am 25.02.2016 um 14:06:21 Uhr
Goto Top
Tach auch...
@echo off
powershell -Executionpolicy ByPass -Command "gci 'c:\Ordner\Verkauf*'  | sort {get-date ([regex]::Replace($_.Name,'.*?(\d{4})-(\d{2})-(\d{2}) (\d{2});(\d{2});(\d{2}).*','$3.$2.$1 $4:$5:$6'))} -Descending | select -Skip 2 | remove-item -Force"  
Gruß jodel32