Forfiles
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Domaine | Sélection de fichiers par critère et exécution d'une commande |
| Commande | forfiles
|
| Contexte | Windows 7/Server 2008 et suivants — équivalent Windows de find côté Linux |
| Voir aussi | Find (équivalent Linux) |
forfiles sélectionne des fichiers selon des critères (âge, motif de nom) et exécute une commande sur chacun — cas d'usage typique : purge automatisée de vieux fichiers via une tâche planifiée.
Syntaxe de base
forfiles /p D:\dossier /m *.log /d -30 /c "cmd /c del @file"
/p— chemin de départ/m— motif de nom de fichier (par défaut `*.*`)/d— filtre d'âge en jours :-30= fichiers modifiés il y a plus de 30 jours,+30= fichiers modifiés il y a moins de 30 jours/s— récursif (sous-répertoires inclus)/c— commande à exécuter pour chaque fichier trouvé ;@fileest remplacé par le nom du fichier
Tester avant de supprimer
forfiles /p D:\dossier /s /d -30 /c "cmd /c echo @file"
Comme pour find côté Linux, mieux vaut toujours valider la sélection avec un
echo avant de remplacer par une commande destructrice (del) — une
fois la liste confirmée correcte, remplacer echo @file par
del "@file".
Purge récursive avec confirmation visuelle
forfiles /d -30 /p D:\rep\ /s /c "cmd /c echo del @file & del @file"
Affiche chaque fichier juste avant de le supprimer (utile en exécution manuelle interactive, pour garder une trace visible dans la console de ce qui a été traité).
Voir aussi
- Find — équivalent Linux, même logique de test avant destruction