Trucs et astuces

Windows 10, optimiser les performances avec la commande « ForFiles »

Microsoft fait l’éloge des outils de maintenance de Windows 10 mais avec le temps et à l’image de Windows 7, le système « s’encrasse » et s’alourdit avec l’accumulation de fichiers inutiles ou obsolètes. Une commande particulière permet de faire le ménage avec une condition de date. En clair il est possible de supprimer tous les fichiers ayant plus de X jours. Ceci concerne n’importe quels répertoires.

Un outil intégré à Windows permet de faire le ménage dans les fichiers afin de soulager l’unité de stockage.  Il est possible d’automatiser la suppression des données les plus anciennes en quelques secondes.

La démarche est bénéfique au performance du système. Le fait de conserver des dossiers propres, comme par exemple « Téléchargements », accélère leurs changements mais pas seulement. En supprimant les fichiers inutiles vous récupérez de l’espace de stockage (appréciable avec un SSD) tout en évitant les ralentissements dus à la lecture de l’ensemble des données des dossiers. Plus un dossier est encombré plus son ouverture est longue.

Nous n’allons pas utiliser une application tierce mais seulement une commande de Microsoft, « ForFiles ». L’idée est de mettre en place un petit script. Il lancera une recherche automatique des fichiers ayant dépassés une certaine date. Ensuite ils seront automatiquement effacés. Il faut juste savoir que selon le dossier a nettoyer, des privilèges d’administrateur peuvent aitre nécessaires.

Windows 10 et le PowerShell

La commande « ForFiles » est accessible directement en ligne de commande. En clair il faut ouvrir PowerShell (ou une invite de commande pour les anciennes versions de windows ) en mode administrateur. Pour cela tapez “PowerShell” dans le champ “Taper ici pour rechercher” de la barre des tâches” puis exécuter “PowerShell” en mode administrateur.

Dans notre exemple nous allons nous attaquer au répertoire Téléchargement (Downloads) situé dans “c:\Users\ « votre nom »\Downloads”. Notre cible est l’ensemble des fichiers ayant plus de 30 jours. Vous pouvez naturellement choisir une autre période.

Forfiles, beaucoup de possibilités

La commande en question est la suivante

ForFiles /p “C:\Users\ « votre nom »\Downloads” /s /d -30 /c “cmd /c del @file”

Le paramètre « /p » indique le chemin d’accès au répertoire concerné par l’action de ForFiles. « /s » précise que ForFiles dont agir dans le répertoire en question mais également dans tous ses sous répertoires. De son côté « / d » précise la date en jour et « @file » stipule que le nettoyage concerne tous les fichiers. Pour connaitre en détails toutes les possibilités de ForFiles, tapez “Forfiles /?“.

Il est possible de raccourcir cette commande. Il suffit seulement d’ouvrir le PowerShell directement dans le dossier en question. Cela évite d’indiquer le chemin d’accès soit “/p “C:\Users\ « votre nom »\Downloads”“.

C’est très simple. Allez dans le répertoire désiré au travers du gestionnaire de fichier puis en pressant la touche « MAJ » de votre clavier un simple clic droit de la souris vous donne accès à la commande « Ouvrir la fenêtre PowerShell ici »  (ou l’invite de commande si vous utilisez une ancienne version de Windows). A partir de là notre ligne de commande devient :

ForFiles / s / d -30 / c "cmd / c del @fichier"

Il existe plusieurs manière d’automatiser ce processus de nettoyage de chaque dossier. L’un des plus simples et de mettre en place dans le répertoire en question un petit script (un fichier .bat) avec les lignes suivantes

@Écho off
ForFiles / s / d -30 / c "cmd / c del @fichier"
fin

Vous pouvez également l’enregistrer sur le bureau en précisant par contre le chemin d’accès

@Écho off
ForFiles /p “C:\Users\ « votre nom »\Downloads” /s /d -30 /c “cmd /c del @file”
fin

A noter que le premier script efface tous les fichiers de plus de 30 jours et cela comprend le script lui-même dès son exécution. Attention la suppression concerne les fichiers dans le répertoire ou le .bat est enregistré.

N’hésitez pas à compléter cette astuce dans les commentaires en particulier du côté du script.

Jérôme Gianoli

Aime l'innovation, le hardware, la High Tech et le développement durable. Soucieux du respect de la vie privée.

Voir commentaires

  • pour automatiser le tout, pourquoi ne pas ajouter un if qui créer un nouveau .bat à l'identique si celui de 30 jours doit être supprimé ?

Partager
Publié par
Jérôme Gianoli

Article récent

SSD PCIe 5.0 x4 Platinum P51, SK hynix annonce du 14,7 Go/s !

Annoncé en mars dernier, le SK hynix Platinum P51 PCIe 5.0 est enfin lancé en… Lire d'avantage

16/12/2024

FA200, Acer dévoile un nouveau SSD PCIe 4.0 x4

Acer lève le voile sur sa gamme de SSD FA200 PCIe 4.0. Visant le milieu… Lire d'avantage

16/12/2024

Kioxia Exceria Plus G4 : Un SSD M.2 NVMe Gen 5 milieu de gamme prometteur

Kioxia a dévoilé l'Exceria Plus G4, un SSD M.2 NVMe qui promet des débits musclés… Lire d'avantage

16/12/2024

Mastic Putty de Thermal Grizzly : une alternative aux pads thermiques

Le mastic thermique de Thermal Grizzly se positionne comme une solution haut de gamme pour… Lire d'avantage

16/12/2024

Windows 11 et les PCs non pris en charge, il est temps de clarifier la situation

Un récent article de PCWorld, a semé une confusion en affirmant que Microsoft aurait assoupli… Lire d'avantage

16/12/2024

Windows 11 et Recall, la polémique est toujours là malgré des avancées !

Le retour de Recall n'est pas sans problème. Les critiques sont toujours là autour de… Lire d'avantage

16/12/2024