Script pour les clés de registre
Bonjour,
j'essaye d'écrire un script pour supprimer des clés de registre mais je bloque sur une boucle imbriquée.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
REM la variable à modifier selon la recherche.
set str=test
REM TODO str en %1:~1,-1
rem parce que c'était une clé avec peu de valeur str=test, mais définit le point de départ de la recherche
set key=HKLM\SOFTWARE\Classes\Interface
for /f "tokens=1" %%i in ('reg query %key% /s /f %str%') do (
for /f "tokens=1" %%p in ('echo '%%i' ^| findstr "%key:~4%"') do (
rem si %%p:~4 != key:~4
rem set ckey=%%p
rem reg export %ckey%%%i backup.reg
rem reg delete %ckey%%%i
rem sinon ckey=%%p
)
) |
L'idée est donc de faire une recherche dans la base de registre à partir d'une chaine.
A partir de ce résultat, si la ligne est un chemin, mettre à jour ckey puis exporter la clé avant de la supprimer.
Sauf que je ne parviens pas à récupérer le chemin de la clé pour pouvoir l'exporter.
J'ai rajouté quelques commentaires pour que ce soit un peu plus clair sur le code.
Si une bonne âme voulait bien me donner un coup de pouce. ^^'