[BATCH] Problème avec reg find

Problème avec reg find [BATCH] - Shell/Batch - Programmation

Marsh Posté le 08-03-2004 à 16:21:35    

Bonjour tt le monde,
 
J'ai créé un batch pour le boulot pour permettre de chercher les profils fantôme sur toutes les machines du réseau: çà crée parfois des soucis poru l'ouverture de session.
Mon batch fait dans un 1er temps un net view pour récupérer la liste des machines connectées, puis connecte c$, va voir si le profil XXXX existe, et le cas échéant l'efface.
Le problème que je rencontre est la présence de clés dans la base de registre m'empêchant de totalement effacer le repertoire: certaines clés pointent dessus.
Il faut donc que je scanne la BDR en ligne de commande, puis que j'efface les clés qui posent problème.  
Mais j'ai bcp de mal à utiliser la commande reg find, alors si qq'un pourrait me donner un coup de main çà serait pas de refus...
 
Je vous mets le code source de mon batch principal:

Citation :


@echo off
rem *****************************************
rem * Fait par ############################ *
rem *****************************************
 
title [Recherche d'un profil sur les postes du #####]
 
Rem
Rem Test des arguments
Rem
 
if MASC%1==MASC goto USAGE
 
Rem
Rem Déclaration du fichier par défaut
Rem
 
set CHEMIN=c:\outils\svp\test\
set FICHIER=%CHEMIN%listing.txt
 
Rem
Rem Récupération de la liste des machines connectées
Rem
 
net view | sort | find "\\" | cut -c 3-15 > %FICHIER%
 
Rem
Rem Initialisation des variables globales
Rem
 
set PROFIL=%1%
set SCRIPT=machine.bat
 
Rem
Rem Boucle for pour scanner le fichier
Rem
 
FOR /F "eol=; tokens=1" %%a IN (%FICHIER%) do %CHEMIN%%SCRIPT% %%a %PROFIL%
goto FIN
 
Rem
Rem Partie Usage
Rem
 
:USAGE
echo.
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º Usage : %0% CompteNT º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
goto FIN


 
et voici le code du 2ième batch:
 

Citation :


@echo off
Rem *************************************
Rem Fait par ########################## *
Rem *************************************
 
Rem
Rem Test des arguments
Rem
 
if MASC%2==MASC goto USAGE
 
Rem
Rem Initialisation des variables globales
Rem
 
set MACHINE=%1%
set UNITE=y:
set LOGIN=########
set PASSWD=########
set PROFILE=%2%
set CHEMIN=%UNITE%\winnt\profiles\
set DOMAINE=######
 
Rem
Rem Connexion du lecteur réseau
Rem
 
if exist %UNITE%\nul net use %UNITE% /delete 1>nul
net use %UNITE% \\%MACHINE%\c$ %PASSWD% /USER:%DOMAINE%\%LOGIN% 1>nul
if errorlevel 2 goto FIN
 
Rem
Rem Vérification de la présence du profil
Rem
 
if exist %CHEMIN%%PROFILE% goto BON
goto PASBON
 
Rem
Rem Profil présent sur le poste
Rem
 
:BON
echo --------------------------------------------------------
echo Le profil "%PROFILE%" est present sur le poste %MACHINE%
echo --------------------------------------------------------
rmdir /s /q %CHEMIN%%PROFILE%
echo -------------
echo Profil efface
echo -------------
if exist %UNITE%\nul net use %UNITE% /delete 1>nul
goto FIN
 
Rem
Rem Profil absent du poste
Rem
 
:PASBON
echo --------------------------------------------------------------
echo Le profil "%PROFILE%" n'est pas present sur le poste %MACHINE%
echo --------------------------------------------------------------
if exist %UNITE%\nul net use %UNITE% /delete 1>nul
goto FIN
 
Rem
Rem Usage
Rem
 
:USAGE
echo.
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º Syntaxe de la commande:  º
echo º %0% PosteNT CompteNT º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
goto FIN
 
:FIN


 
Voilà, j'espère que j'ai été complet dans mon explication du problème, et que mon post n'est pas trop long. S'il faut que j'enlève le code dites-le moi et j'édite mon message.
Merci d'avance pour votre aide.
 
Matthieu

Reply

Marsh Posté le 08-03-2004 à 16:21:35   

Reply

Marsh Posté le 09-03-2004 à 09:12:54    

un p'tit UP.
Personne n'a d'idée??
Est ce que quelqu'un ici a déjà utilisé la commande reg et ses dérivées (reg find, reg query, reg delete,...)???

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed