Partie 2 : Exporter Configuration Windows
Dans cette deuxième partie je vais traiter de l’export de la configuration de Windows toujours en batch et avec une gestion d’erreurs.
Le code suivant vous permettra, d’exporter la liste des commandes DOS disponiblent, vos variables d’environnements.
Ceci est bien entendu un exemple de script, je cherche uniquement via ce code à expliquer les syntaxes ou proposer une aide à l’analyse du batch avec une gestion d’erreurs.
Le batch est relativement complet, très simple d’utilisation, facile à comprendre et à apprendre.
Comme sur l’article précédent je POST le code Brute ci-dessous. je le détails un peut plus bas.
FOR /f "delims=" %%a in (liste.txt) do echo %%a
echo.
// CHANGEMENT DU FOND
color 1F
// Definie une variable
SET /p r=Ceci est le p//ier lancement (o/n) ?
IF %r% == n (goto fin) ELSE (
goto debut
)
:debut
// PAUSE DE 4 secondes (n-1)
PING 127.0.0.1 -n 2 -w 60000 >NUL
IF exist "c:\liste" (del /q c:\liste)
IF exist "c:\liste" (rmdir /q c:\Liste)
IF NOT exist "c:\liste" (md c:\liste)
help > c:\liste\commandes.txt 2>>c:\liste\STD-error.txt
set > c:\liste\Variables_environnement.txt 2>>c:\liste\STD-error.txt
echo.
// DONNE UN CADRE A MON TEXTE
@echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º Generation des fichiers termines º
echo º - Commandes DOS º
echo º - Variables d'environnements et config º
echo º - Log erreurs º
@echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
// permet de sauter une ligne
:fin
echo.
echo.
echo Ouverture du dossier ...
echo.
echo.
PING 127.0.0.1 -n 2 -w 60000 >NUL
IF NOT EXIST c:\liste (set /p a=Dossiers et fichiers introuvables, voulez vous reparer o/n : ) ELSE (
explorer c:\liste
set a=n
)
if %a%==o (goto :debut) ELSE (
echo Fermeture......
)
PING 127.0.0.1 -n 3 -w 60000 >NUL
Ce même largement commenté.
@echo off
// Lui même situé dans le dossier courant du bat
FOR /f "delims=" %%a in (liste.txt) do echo %%a
echo.
color 1F
// (SET suivis de/p permet une interaction avec l'utilisateur)
SET /p r=Ceci est le p//ier lancement (o/n) ?
// je traite chaque reponse possible dans un marqueur via un go to
IF %r% == n (goto fin) ELSE (
goto debut
)
// le ping local permet de faire une PAUSE. 4 secondes (n-1)
PING 127.0.0.1 -n 2 -w 60000 >NUL
// je suprime si ils existent deja
IF exist "c:\liste" (del /q c:\liste)
IF exist "c:\liste" (rmdir /q c:\Liste)
IF NOT exist "c:\liste" (md c:\liste)
// 'jinscris dans STD-error.txt les potentielles erreurs
// Une sortie via un > permet d'ecrire dans un fichier
// Une sortie via un >> permet d'écrire mais à la suite du précédent
help > c:\liste\commandes.txt 2>>c:\liste\STD-error.txt
set > c:\liste\Variables_environnement.txt 2>>c:\liste\STD-error.txt
echo.
@echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º Generation des fichiers termines º
echo º - Commandes DOS º
echo º - Variables d'environnements et config º
echo º - Log erreurs º
@echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
// permet de sauter une ligne
:fin
echo.
echo.
echo Ouverture du dossier ...
echo.
echo.
PING 127.0.0.1 -n 2 -w 60000 >NUL
// ouvre mon dossier en fin de sequence
explorer c:\liste
set a=n
)
// si l'utilisateur souhaite recommencer je le renvoi en début de fichiers
if %a%==o (goto :debut) ELSE (
echo Fermeture......
)
PING 127.0.0.1 -n 3 -w 60000 >NUL
echo.
Vous avez à présent avec la p//ière partie deux codes complémentaires avec une relative large utilisation de divers commandes.
Dans la troisième partie l’objectif sera la mise au point d’un gestionnaire de tâches (kill processor).