Se connecter avec
S'enregistrer | Connectez-vous

[Topic unique] Script de nettoyage automatique sous Windows Xp pro

Dernière réponse : dans Le monde de Windows

Voici un script de nettoyage automatique pour XP pro. Celui-ci est exécuté lors de chaque arrêt ou reboot de l’OS et va soigneusement vous nettoyer vos fichiers temporaires, historiques et autres fichiers indésirables. L’avantage de lancer ce script lors de l’arrêt ou du reboot est que Windows n’empêchera pas la suppression des fichiers (pas de message Le processus ne peut pas accéder au ficher car ce fichier est utilisé par un autre processus. !)

Créez un fichier texte du nom de votre choix (nett_auto par exemple) et donnez lui l’extension .bat.

Copiez le script suivant dans ce batch :

RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Historique"
RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Temporary Internet Files"
RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Temp"

RD /S /Q "C:\Documents and Settings\Default User\Local Settings\Historique"
RD /S /Q "C:\Documents and Settings\Default User\Local Settings\Temporary Internet Files"
RD /S /Q "C:\Documents and Settings\Default User\Local Settings\Temp"

Ce script n’est ici qu’à titre d’exemple, à vous de le modifier en fonction de vos différents compte d’utilisateurs. Vous pouvez également en profiter pour ajouter le nettoyage d’autres fichiers ou répertoires temporaires.

La commande RD (ou RMDIR) avec l’option /S va supprimer tous les répertoires et fichiers du répertoire spécifié en plus du répertoire lui-même. L’option /Q (pour Quiet) active le mode silencieux, c'est-à-dire qu’il n’y a pas de confirmation demandée lors de la suppression.

Copiez ensuite ce fichier dans C:\WINDOWS\System32\GroupPolicy\Machine\Scripts\Shutdown. Vous avez néanmoins la possibilité de placer votre script ailleurs sur le disque mais on préfère faire quelque chose de propre ;) 

Lancer ensuite gpedit.msc (menu Démarrer, Exécuter… et tapez gpedit.msc)
Dans la fenêtre de gauche, sélectionnez Paramètres Windows puis Scripts (démarrage/arrêt). Dans la fenêtre de droite, double cliquez sur Arrêter le système et ajoutez votre script. Nul besoin d’ajouter des paramètres de scripts.

Et voilà, lors de votre prochain arrêt ou reboot, votre script sera exécuté. A noter que si vous n’avez pas fait de ménage depuis bien longtemps, la première exécution du script peut-être légèrement longue.

Source :
http://www.zebulon-fr.com/
Lassé par la pub ? Créez un compte

Ok ca marche nikel ca vire toute la merde et apparament ca a juste laissé les bon cookies :) 

Juste orbitalcoil dans le script jsais pas pkoi t'as copié deux fois les 3 lignes:
Citation :

RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Historique"
RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Temporary Internet Files"
RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Temp"


Une fois suffie :) 

DaV-X a écritOk ca marche nikel ca vire toute la merde et apparament ca a juste laissé les bon cookies :) 

Juste orbitalcoil dans le script jsais pas pkoi t'as copié deux fois les 3 lignes:
Citation :

RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Historique"
RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Temporary Internet Files"
RD /S /Q "C:\Documents and Settings\Votre_User\Local Settings\Temp"




y a deux utilisateurs dans son script

les guillemets faut les virer?

a part ca j'ai pas eu de pb ca a l'air de marcher

L'intérêt, par exemple, est de pouvoir installer ce batch sur des centaines de postes en 2 clics grâce à une console d'administration basique permettant le déploiement, pouvoir intégrer ces commandes dans un logiciel ou encore parmi les commandes déjà existantes d'un script DOS. De plus, différents paramètres peuvent être appliqués aux commandes, ainsi que des variables d'environnement système ou des variables personnalisées (commande SET). Personnellement, je me suis fais un batch avec interface me demandant si je veux éxecuter ces commandes maintenant (réponse : O/N) car comme dit plus haut, il faut éviter de lancer ce genre de script à l'ouverture ou fermeture du PC si une installation inachevée est en attente de finalisation (=> si un message a demandé à l'utilisateur de redémarrer après installation d'un logiciel ou d'un patch de màj durant la session en cours).

Ce fichier nécessite la commande CHOICE.COM [Télécharger ICI] dans le path système (C:\WINDOWS ou C:\WINDOWS\system32, par exemple) => Description de la commande
A la fin, c'est une simple commande de redémarrage (plus rapide que par le Menu Démarrer), vous pouvez donc attribuer une icône de redémarrage du PC à la commande via les propriétés de son raccourci que vous aurez placé sur le Bureau puis redémarrer ou éteindre désormais votre PC par ces raccourcis.

  1. @echo off>nul
  2. if not"%os%"=="Windows_NT" goto OSerr
  3. color 0A
  4. :OSerr
  5. echo Suppression des r‚pertoires temporaires de Windows XP
  6. echo.
  7. echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
  8. echo º º
  9. echo º FenyX.ws º
  10. echo º º
  11. echo º Presence-PC.com º
  12. echo º º
  13. echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
  14. echo.
  15. echo.
  16. echo Voulez-vous ex‚cuter le script de nettoyage maintenant ?
  17. echo.
  18. echo O. Oui
  19. echo N. Non
  20. echo.
  21. choice /C:ON /N Faites votre choix [O,N] :
  22. if errorlevel 2 goto N
  23. if errorlevel 1 goto O
  24. :O
  25. cd "%USERPROFILE%\Local Settings"
  26. rd /S /Q "%USERPROFILE%\Local Settings\Temp"
  27. if not exist "%USERPROFILE%\Local Settings\Temp" md "%USERPROFILE%\Local Settings\Temp"
  28. rd /S /Q "%USERPROFILE%\Local Settings\Temporary Internet Files"
  29. if not exist "%USERPROFILE%\Local Settings\Temporary Internet Files" md "%USERPROFILE%\Local Settings\Temporary Internet Files"
  30. cd "%WINDIR%"
  31. rd /S /Q "%WINDIR%\Temp"
  32. if not exist "%WINDIR%\Temp" md "%WINDIR%\Temp"
  33. echo
  34. shutdown -s -f -t 00
  35. :N
  36. echo
  37. shutdown -s -f -t 00

P.S. : pour redémarrer remplacer la commande d'extinction du PC par
  1. shutdown -r -f -t 00


Envoyez-moi par mail ou par ce forum votre script .COM ou .BAT avec un icone .ICO (de 32x32 à 96x96) dans une archive et je vous le renvoie au format exécutable (.EXE) beaucoup plus rapide pour l'exécution des commandes + possibilité de cacher la fenêtre DOS. Pas de limite de taille de fichiers ou de nombre de lignes mais... sachant que ça rend les vieux "virus" batch invisibles pour Windows, je vérifie évidemment ce que je compile. Si certains y ont pensé : oubliez !
L'efficacité du procédé prouve deux choses :
1/ le DOS n'est pas mort
2/ le batch est un vrai language de programmation (pour ceux qui en doutaient encore)

Version DOS gratuite recommandée pour toutes les configurations matérielles d'après 1995 : FreeDOS (choix complètement subjectif et assumé comme tel ! ;-)

Petite rectif : enlevez ">nul" après "@echo off". Je sais pas ce que ça fout là, j'avais pas dormi depuis un moment, ça doit être ça :sleep:  Cet ajout ne pose pas de problème mais ne sert, mais alors... vraiment à rien. Idem pour les lignes 33 & 34, virez les c'est pareil.
Désolé. A bientôt

[phrase à la con]P.S. : habitué des forums anglophones surpeuplés, je trouve au contraire qu'il n'y a pas l'air d'y avoir foule dans le coin, c'est peut-être juste une impression mais j'attends avec impatience qu'elle soit démentie...[/phrase à la con]

Désolé pour le timing bidon mais comme cette page est apparue dans une recherche Google concernant les scripts de nettoyage automatique, j'ai pensé que d'autres pouvaient également en avoir besoin et tomber dessus comme moi. Et ce, quelque soit la date du topic (franchement, j'avais même pas calculé l'année ;-D ).
Sinon, merci d'avoir démenti mon affirmation quelque peu hative, peut pas y avoir grand monde si le topic bouge pas, logique...
Si vous avez un moyen de faire connaitre la solution proposée pour compiler les scripts batch (comme un "pinned topic" ou un truc du genre, je sais pas dire en francais), je serai ravi de contribuer en filant un coup de main aux membres de votre forum qui le souhaitent.

Pas assez de forums francophones comme le vôtre, c'est vraiment dommage. Faut croire qu'en France on en a pas marre d'être à la bourre par rapport au reste du monde. En plus ça fait un paquet d'années que vous êtes présents, chapeau !

Bien mieux encore puisque là le script ne s'arrête pas même si un fichier est en cours d'exécution :
  1. @echo off
  2. if not"%os%"=="Windows_NT" goto OSerr
  3. color 0A
  4. :OSerr
  5. echo Suppression des r‚pertoires temporaires de Windows XP
  6. echo.
  7. echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
  8. echo º º
  9. echo º FenyX.ws º
  10. echo º º
  11. echo º Presence-PC.com º
  12. echo º º
  13. echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
  14. echo.
  15. echo.
  16. echo Voulez-vous ex‚cuter le script de nettoyage maintenant ?
  17. echo.
  18. echo O. Oui
  19. echo N. Non
  20. echo.
  21. choice /C:ON /N Faites votre choix [O,N] :
  22. if errorlevel 2 goto N
  23. if errorlevel 1 goto O
  24. :O
  25. echo o|del "%USERPROFILE%\Local Settings\Temp\*.*"
  26. rd "%USERPROFILE%\Local Settings\Temp" /S /Q
  27. if not exist "%USERPROFILE%\Local Settings\Temp" md "%USERPROFILE%\Local Settings\Temp"
  28. echo o|del "%USERPROFILE%\Local Settings\Temporary Internet Files\*.*"
  29. rd "%USERPROFILE%\Local Settings\Temporary Internet Files" /S /Q
  30. if not exist "%USERPROFILE%\Local Settings\Temporary Internet Files" md "%USERPROFILE%\Local Settings\Temporary Internet Files"
  31. echo o|del "%WINDIR%\Temp\*.*"
  32. rd "%WINDIR%\Temp" /S /Q
  33. if not exist "%WINDIR%\Temp" md "%WINDIR%\Temp"
  34. :N
  35. echo
  36. shutdown -s -f -t 00

Ah oui ! Encore un truc pour que le fichier soit ouvert en même temps que les services de Windows, c'est-à-dire avant l'affichage du bureau : créez une nouvelle Valeur Chaîne dans HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices au lieu de Run comme on fait en général.
Evidemment, dans le cas d'un lancement au démarrage le script devrait se limiter à ça, sinon toute la fioriture fait perdre du temps (si c'est un .bat) :
  1. @echo off
  2. echo o|del "%USERPROFILE%\Local Settings\Temp\*.*"
  3. rd "%USERPROFILE%\Local Settings\Temp" /S /Q
  4. if not exist "%USERPROFILE%\Local Settings\Temp" md "%USERPROFILE%\Local Settings\Temp"
  5. echo o|del "%USERPROFILE%\Local Settings\Temporary Internet Files\*.*"
  6. rd "%USERPROFILE%\Local Settings\Temporary Internet Files" /S /Q
  7. if not exist "%USERPROFILE%\Local Settings\Temporary Internet Files" md "%USERPROFILE%\Local Settings\Temporary Internet Files"
  8. echo o|del "%WINDIR%\Temp\*.*"
  9. rd "%WINDIR%\Temp" /S /Q
  10. if not exist "%WINDIR%\Temp" md "%WINDIR%\Temp"

Vous pouvez compiler ce batch en .EXE et il mettra moins de temps à exécuter les commandes (n'oubliez pas que même "REM" ou "ECHO." sont des commandes et bouffent du temps d'exécution pour rien).

Téléchargez l'exécutable (mode GUI ou silent) et le fichier REG (optimisés pour le déploiement) ICI ou LA

Modifification du fichier REG : adaptez-le en l'ouvrant avec le Bloc-note et en indiquant le chemin du fichier SysClean.exe sur votre ordinateur. Selon votre version de Windows, remplacez RunServicesOnce (valable seulement pour Win9x-ME) par RunOnce.

Signalez-moi si vous avez besoin d'un partage sur un autre serveur plus direct ou d'aide sur l'élaboration d'un script pour installer ça en masse sur les autres postes de votre réseau, par exemple...

Servez-vous de autoexnt.exe, utilitaire fourni avec quasiment tous les Kits de Ressources Microsoft, de NT à 2003 Serveur, pour lancer ce fichier de commandes avant winlogon.exe (ç-à-d avant l'ouverture de session).

Téléchargez l'outil AutoExNT ICI

salut à tous,
FényX, j'ai une question pour toi:
Comment faire en sorte qu'un .bat puisse s'exécuter depuis le serveur d'agence sur les postes utilisateurs qui se connectent au dit serveur??

Et aussi, comment créer un script unique pour tous les serveurs, sachants qu'ils n'ont pas le même nom, ni même rien en commun? dois-je les recopier en modfiant les infos à chaque fois?

Toutes réponses serait d'une grande aide, parceque la, je pédale dans la semoule...

Cordiallement,
Bart41
Lassé par la pub ? Créez un compte