greenhorn101
Goto Top

Löschen von bestimmten Dateien(.tmp, .mp3, .txt, etc) die älter als n Tage sind (PowerShell)

PowerShell v1.0

Hallo zusammen,

nach langem hin und her habe ich endlich den Sprung geschafft, das Skript so zum laufen zu bringen wie ich das wollte.
Als Dauer habe ich 10 Tage angegeben, das kann aber jeder ganz nach seinem Wünsch änder, indem er einfach die Zahl ändert.

Alt:
Get-Childitem -recurse E:\test\$j | Where-Object {($Today-$_.LastWriteTime).Days -gt 10} | Remove-Item
Im alten Befehl habe ich versucht den Pfad und die zu löschenden Dateien in einem einzigen Array zusammen zu fassen($j=$h+$i), was aber nicht den gewünschten Erfolg erzielte.
$j stellt das zusammengesetzte Array dar, das aus folgenden Bestand.
$h stellt dabei die jeweiligen Pfade der Ordner da und
$i die zu löschenden Dateien

Neu:
Get-Childitem -recurse E:\test\$h  -include $i | Where-Object {($Today-$_.LastWriteTime).Days -gt 10} | Remove-Item
Man muss also darauf achten, dass man das -include nicht ans Ende setzt, nach Remove-item, sondern direkt nach dem Pfad der zu löschenden Dateien, dann werden auch wirklich nur die Dateien gelöscht, die älter als 10 Tage sind und eben die entsprechenden Eigenschaften tragen (Endung .mp3 etc.).
Alle anderen Dateien die älter als 10 Tage sind, und nicht mit einer Eigenschaft von $i übereinstimmen werden nicht gelöscht.


Nun läuft das Skript ohne Probleme!!!
Ich hoffe ich kann dem einen oder anderen damit auch helfenface-smile

Über positive Kommentare würde ich mich sehr freuen.

grüße
greenhorn101
Kommentar vom Moderator Dani am Feb 05, 2011 um 12:46:11 Uhr
Formatierung eingefügt und in den richtigen Bereich verschoben.

Content-Key: 159661

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

Printed on: April 26, 2024 at 19:04 o'clock

Member: Clockwork
Clockwork Feb 02, 2011 at 14:28:21 (UTC)
Goto Top
Hallo greenhorn101,

vielen Dank für das Skript - Ich war gerade auf der Such nach genau so einem Fall face-smile

Gruß,
Clockwork
Member: schmidtshauser
schmidtshauser Feb 15, 2011 at 15:06:47 (UTC)
Goto Top
Hallo greenhorn1,

gutes Beispiel!

gruß sh