[Batch] Fichier .bat de nettoyage, optimisation Le sujet est résolu

Vous trouverez ici des scripts pour faciliter la gestion de votre ordinateur. Ils sont proposés tels quels par le rédacteur du message. La team ne vérifie pas la qualité de ces éléments et n'assure pas le support ni la maintenance. Vous les utilisez sous votre seule responsabilité.
RĂšgles du forum
Pour les créateurs de scripts

Veuillez noter que les scripts que vous partagez ici sont proposés tels quels et la team ne vérifie pas leur qualité.
Nous vous rappelons que nous n'assurons ni le support ni la maintenance des scripts publiés.

Pour faciliter leur utilisation par les autres membres de la communauté, respectez ces consignes :
.
  • Utilisez les prĂ©fixes de langage pour taguer les messages.
  • Assurez-vous que vos scripts sont clairs et bien documentĂ©s
.
Merci de votre compréhension et de votre contribution.
Avatar du membre
rayman95
Modérateur
Modérateur
Messages : 1855
Enregistré le : mer. 9 déc. 2020 22:41
A remercié : 570 fois
A été remercié : 1166 fois
    Windows 10 Firefox

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par rayman95 »

viens de tester la V3, et ca fait le taff...
on a les questions O/N si on veut faire ou pas..y a le log a la fin..
peut-etre insister un peu pour le redemarrage a la fin..
bon boulot...
titou
Membre VIP +
Membre VIP +
Messages : 1996
Enregistré le : mer. 28 sept. 2011 15:22
Localisation : france ardeche
A remercié : 3 fois
A été remercié : 6 fois
    Linux Chrome

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par titou »

Merci du retour rayman95 😉

J’ai modifier la fin du script pour un redĂ©marrage plus visible 👍
Le fossĂ© sĂ©parant thĂ©orie et pratique est moins large en thĂ©orie qu’il ne l’est en pratique Toute demande de liens par MP est inutile !
Loic33
Membre VIP +
Membre VIP +
Messages : 323
Enregistré le : ven. 20 mars 2020 11:45
A remercié : 96 fois
A été remercié : 52 fois
    Windows 10 Firefox

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par Loic33 »

Bonjour

pour ma part j'ai demandé à Mistral de me realiser un fichier automatique de nettoyage aprÚs vidage de la corbeille

et voici le résultat

et ça fonctionne

@echo off
:: Script de nettoyage pour Windows 11 Pro
:: Ce script vide la corbeille, supprime les fichiers temporaires et nettoie les caches.

:: Vider la corbeille
echo [1/4] Vidage de la corbeille...
echo Y | powershell -command "Clear-RecycleBin -Force"

:: Supprimer les fichiers temporaires
echo [2/4] Suppression des fichiers temporaires...
del /q /f %temp%\*.* 2>nul

:: Supprimer les caches Windows
echo [3/4] Suppression des caches Windows...
del /q /f %windir%\Prefetch\*.* 2>nul
del /q /f %windir%\Temp\*.* 2>nul

:: Lancer l'outil de nettoyage de disque (cleanmgr)
echo [4/4] Lancement du nettoyeur de disque...
cleanmgr /sagerun:1

echo.
echo Nettoyage terminé avec succÚs !
pause


copier dans le bloc note
bouton droit executer en tant qu'administrateur et voilou !

Bonne journée
La libertĂ© des uns s’arrĂȘte ou commence celle des autres
titou
Membre VIP +
Membre VIP +
Messages : 1996
Enregistré le : mer. 28 sept. 2011 15:22
Localisation : france ardeche
A remercié : 3 fois
A été remercié : 6 fois
    Android Chrome

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par titou »

Je comprends que tout le monde aime ou pas l’IA
Sinon c’est utile aussi
Tout est bon a prendre ;)
Le script est tres propre en syntaxe 👍
Et je pense que moi aussi, il y a des erreurs oĂč oubli

Voici la différence avec le script ci dessous:

​1. L'absence d'Ă©lĂ©vation des droits (Le blocage silencieux)
​Dans le premier script : Le script est lancĂ© avec les droits utilisateur standards.
​L'erreur : Les dossiers %windir%\Prefetch et %windir%\Temp appartiennent au systĂšme. Sans droits Administrateur, la commande del se heurte Ă  un refus d'accĂšs ("AccĂšs refusĂ©"). Comme vous aviez mis 2>nul (qui masque les erreurs), le script faisait semblant de rĂ©ussir, mais en rĂ©alitĂ©, il ne supprimait rien du tout dans les dossiers Windows.
​La solution finale : L'ajout de la commande fsutil au tout dĂ©but force le script Ă  demander les droits Administrateur. Le nettoyage systĂšme peut enfin s'opĂ©rer.

​2. Le nettoyage incomplet (Le piùge des sous-dossiers)
​Dans le premier script : Vous utilisez del /q /f %temp%\*.*.
​L'erreur : La commande del ne supprime que les fichiers. Elle ignore complĂštement les sous-dossiers. Sur un espace systĂšme limitĂ©, comme c'est le cas sur un SSD NVMe de 128 Go oĂč chaque gigaoctet compte, c'est une faille majeure. Les logiciels (navigateurs, installeurs, outils Windows) crĂ©ent des dossiers entiers dans %temp% qui restaient intacts Ă  chaque passage du script.
​La solution finale : L'ajout de la boucle for /f ... dir /b /a:d permet de cibler et de dĂ©truire intĂ©gralement les rĂ©pertoires et leurs arborescences.

​3. L'oubli des fichiers cachĂ©s et protĂ©gĂ©s
​Dans le premier script : L'attribut /a est absent de vos commandes del.
​L'erreur : De nombreux fichiers temporaires sont marquĂ©s comme "CachĂ©s" ou "SystĂšme" par les applications qui les gĂ©nĂšrent. La commande del classique passe purement et simplement par-dessus sans les effacer.
​La solution finale : L'ajout de /a force la lecture et la suppression de tous les fichiers, peu importe leurs attributs de protection.

​4. La lourdeur du vidage de la corbeille
​Dans le premier script : echo Y | powershell -command "Clear-RecycleBin -Force"
​L'erreur : Faire appel Ă  PowerShell depuis un script Batch (.bat) est trĂšs lourd. Le systĂšme doit charger tout le moteur PowerShell juste pour vider une corbeille, ce qui ajoute un dĂ©lai de 2 Ă  3 secondes Ă  l'exĂ©cution. De plus, le echo Y | Ă©tait redondant puisque le paramĂštre -Force indique dĂ©jĂ  Ă  PowerShell de ne pas demander de confirmation.
​La solution finale : La suppression native du dossier $Recycle.Bin sur toutes les lettres de lecteur (de A Ă  Z) en langage Batch pur est instantanĂ©e (quelques millisecondes) et couvre simultanĂ©ment le disque systĂšme et le disque de stockage

Le voici modifier, peut-ĂȘtre avec des oublis et des erreurs..

Code : Tout sélectionner

@echo off
setlocal EnableExtensions
chcp 65001 >nul
title Nettoyage Windows 11 Pro

:: Vérification et auto-élévation des droits Administrateur
fsutil dirty query %systemdrive% >nul 2>&1 || (powershell -NoProfile -Command "Start-Process '%~f0' -Verb RunAs" & exit /b)
cd /d "%~dp0"

echo ===================================================================
echo               NETTOYAGE AUTOMATIQUE WINDOWS 11
echo ===================================================================
echo.

:: [1/4] Vider la corbeille sur tous les disques (A à Z) en mode natif instantané
echo [1/4] Vidage de la corbeille...
for %%D in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
    if exist "%%D:\$Recycle.Bin" (
        rd /s /q "%%D:\$Recycle.Bin" 2>nul
    )
)

:: [2/4] Supprimer les fichiers temporaires en profondeur (inclus fichiers sans extension et cachés)
echo [2/4] Suppression des fichiers temporaires...
del /f /s /q /a "%temp%\*" 2>nul
for /f "delims=" %%D in ('dir /b /a:d "%temp%" 2^>nul') do rd /s /q "%temp%\%%D" 2>nul

:: [3/4] Supprimer les caches Windows (Prefetch et Temp systĂšme)
echo [3/4] Suppression des caches Windows...
del /f /s /q /a "%windir%\Prefetch\*" 2>nul
del /f /s /q /a "%windir%\Temp\*" 2>nul
for /f "delims=" %%D in ('dir /b /a:d "%windir%\Temp" 2^>nul') do rd /s /q "%windir%\Temp\%%D" 2>nul

:: [4/4] Lancer le nettoyeur de disque en attendant sa fin complĂšte
echo [4/4] Lancement du nettoyeur de disque (veuillez patienter)...
start /wait cleanmgr /sagerun:1

echo.
echo ===================================================================
echo               Nettoyage terminé avec succÚs !
echo ===================================================================
echo.
pause

[Code/]
Le fossĂ© sĂ©parant thĂ©orie et pratique est moins large en thĂ©orie qu’il ne l’est en pratique Toute demande de liens par MP est inutile !
Répondre