1

Тема: CMD/BAT: Как сделать экспорт "значения" в реестре

С новым годом!)
Мне нужно сделать экспорт "Значения" в реестре, допустим от сюда:

"HKLM\software\111" ключ "TEST" параметр "REG_SZ"
и сохранить значение в файл text.txt

Ах да, возможно ли добавить условие в bat, допустим если в значении реестра стоят любые символы кроме "AAA", поменять его на "AAA" ???

2

Re: CMD/BAT: Как сделать экспорт "значения" в реестре

Примерно так:

@echo off
setlocal

for /f "tokens=2*" %%i in ('reg.exe query "hklm\software\111" /v "test"^|find.exe /i "reg_sz"') do set sTest=%%j

if defined sTest (
    echo %sTest%>".\text.txt"
) else (
    echo Can't find reg_sz [test] in [hklm\software\111]
)

endlocal
exit /b 0

Ах да, возможно ли добавить условие в bat, допустим если в значении реестра стоят любые символы кроме "AAA", поменять его на "AAA" ???

Условие, в данном случае, лишнее: меняйте всегда.

3

Re: CMD/BAT: Как сделать экспорт "значения" в реестре

if defined sTest (
    echo %sTest%>".\text.txt"
) else (
    echo Can't find reg_sz [test] in [hklm\software\111]
)

alexii, вы можете подробней объяснить данный код?

4

Re: CMD/BAT: Как сделать экспорт "значения" в реестре

if defined sTest

Если определена переменная «sTest», то…

Переменная «sTest» не будет определена, если не будет найден параметр «test» в разделе реестра «hklm\software\111» в предыдущей команде.

Подробности в:

if /?

5

Re: CMD/BAT: Как сделать экспорт "значения" в реестре

Спасибо, теперь разобрался