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:
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
cible.txt est mon fichier contenant l'exportation complète de HKLM...
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?