PowerShell - Purger des fichiers plus vieux de X jours

Petit mémo pour purger via un une commande PowerSHELL des fichiers et répertoires datant de plus de X jours.

Commande :

 Get-ChildItem "EMPLACEMENT_FICHIERS" -Recurse | Where CreationTime -lt  (Get-Date).AddDays(-X)  | Remove-Item -Force -Recurse

EMPLACEMENT_FICHIERS = Emplacement à purger
X
= Filtre correspondant au nombre de jours à conserver

Exemple :

Pour purger le répertoire C:\log en ne conservant uniquement les fichiers datant de moins de 7 jours :

 Get-ChildItem "C:\Log" -Recurse | Where CreationTime -lt  (Get-Date).AddDays(-7)  | Remove-Item -Force -Recurse

Pour supprimer uniquement les fichiers et conserver les répertoires, le filtre -File peut être utilisé :

 Get-ChildItem "C:\Log" -Recurse -File | Where CreationTime -lt  (Get-Date).AddDays(-7)  | Remove-Item -Force -Recurse

Une tâche planifiée peut être créée pour automatiser la purge : Exécuter un script PowerShell via une tâche planifiée

2 commentaires sur “PowerShell - Purger des fichiers plus vieux de X jours

  1. Jean-Michel Reply

    Bonsoir,

    Comment faire pour, enchainer, plusieurs scripts à la suite ?
    En effet, j'ai plusieurs répertoires dans lesquels je dois supprimer des fichiers antérieurs à 90 jours et j'aimerais au final faire une tâche planifiée.

    Merci
    Jean-Michel

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *