Bonsoir à tous!
J'ai un souci sur l'affichage "désirée" d'une chaîne de caractères extraite du Registre.
J'ai réalisé une extraction d'une partie du Registre dans un fichier texte posé sur le Bureau.
Je scanne ensuite ce fichier texte afin de retrouver le chemin complet d'une adresse IP. (NameServer ou DhcpNameServer). Ors dans le tri j'obtiens encore trop d'informations. Toutes les chaînes avec leurs CLSID m'affichent l'occurence "NameServer" et c'est là que je deviens zinzin car je n'arrive pas à filtrer.
En détails:
je cible cette chaîne:
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\]
Je voudrais connaître toutes les CLSID ainsi que leurs "valeurs" NameServer = IP recherchée.
En utilisant ce batch j'ai la réponse:
cible.txt est mon fichier contenant l'exportation complète de HKLM...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 @echo off for /f "delims=" %%i in ('type "cible.txt" ^|findstr /i /r "{*-*-*-*-*} NameServer"') do echo %%i >>resultat.txt notepad resultat.txt pause
resultat.txt contient toutes les clefs ainsi que toutes les valeurs de NameServer. J'ai donc éliminer toutes les autres informations.
{*-*-*-*-*} m'affiche la CLSID.
Mon problème maintenant:
Avec ce script je n'arrive pas à éliminer par exemple les chaînes contenant une CLSID avec une valeur nulle comme celle-ci --> "NameServer"=""
J'ai essayer d'intégrer en variable l'IP recherchée en utilisant ^| find /i /v, (/v m'affichera toutes les valeurs autres que la variable, mais existe-t-il un commutateur afin d'afficher que l'occurence recherchée?).
Je n'arrive pas à obtenir la chaîne+CLSID+IP voulue!!!
Avez vous des idées?
Partager