======Работа с реестром Windows из командной строки или BAT файла======
{{:software:microsoft:bat.jpg?150 |}}
Нужно добавить запись в реестр с помощью BAT файла? Хотите по расписанию править ветки реестра? Нужно исправить значение реестра из командной строки? Нужно поправить реестр компьютера по сети? Легко!
В первую очередь следует знать, что работа с реестром требует прав администратора, так что командную строку запускаем от имени администратора, а BAT файл выполняем с наивысшими привилегиями.
Для работы с удалённым реестром тоже есть ограничения. Из командной строки с реестром удалённых машин можно работать только в разделах HKEY_ LOCAL_MACHINE (HKLM), и HKEY_USERS (HKU).
=====Параметры команд=====
* **/v** — имя параметра, добавляемого в выбранный раздел.
* **/ve** — добавление параметра с пустым именем (по умолчанию) в этот раздел.
* **/t** — тип данных
* REG_SZ
* REG_MULTI_SZ
* REG_EXPAND_SZ
* REG_DWORD
* REG_QWORD
* REG_BINARY
* REG_NONE
* если не указывается, то по умолчанию используется REG_SZ.
* **/s** — символ, используемый в качестве разделителя данных для параметров типа REG_MULTI_SZ. Если не указан, то в качестве разделителя используется "\0".
* **/d** — значение, присваиваемое добавляемому параметру реестра.
* **/f** — принудительно перезаписывает существующую запись реестра без запроса подтверждения.
* **/reg:32** — указывает, что к разделу реестра следует обращаться с помощью представления для 32-разрядных приложений.
* **/reg:64** — указывает, что к разделу реестра следует обращаться с помощью представления для 64-разрядных приложений.
=====Команды=====
* REG QUERY
* REG ADD
* REG DELETE
* REG COPY
* REG SAVE
* REG RESTORE
* REG LOAD
* REG UNLOAD
* REG COMPARE
* REG EXPORT
* REG IMPORT
* REG FLAGS
====Вызов справки:====
reg add /?
**reg add** — добавление и изменение данных в реестре.
REG ADD \\ABC\HKLM\Software\MyCo
Добавляет раздел HKLM\Software\MyCo на удаленном компьютере ABC
REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
Добавляет параметр (имя: Data, тип: REG_BINARY, данные: fe340ead)
REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
Добавляет параметр (имя: MRU, тип: REG_MULTI_SZ, данные: fax\0mail\0\0)
REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d ^%systemroot^%
Добавляет параметр (имя: Path, тип: REG_EXPAND_SZ, данные: %systemroot%)
Примечание. В расширяемой строке используйте знак вставки ( ^ )
Пример **BAT** файла, который разрешает запуск неподписанных **PowerShell** скриптов:
@echo off
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\PowerShell" /v "ExecutionPolicy" /t REG_SZ /d "Bypass" /f
**reg delete** — удаление данных в реестре.
REG DELETE HKLM\Software\MyCo\MyApp\Timeout
Удаляет раздел реестра Timeout и все его подразделы и параметры.
REG DELETE \\ZODIAC\HKLM\Software\MyCo /v MTU
Удаляет параметр реестра MTU из раздела MyCo на компьютере ZODIAC
**reg query** — считать данные из реестра.
REG QUERY HKLM\Software\Microsoft\ResKit /v Version
Отображение значения параметра реестра Version
REG QUERY \\ABC\HKLM\Software\Microsoft\ResKit\Nt\Setup /s
Отображение всех подразделов и их параметров в разделе реестра Setup
удаленного компьютера ABC
REG QUERY HKLM\Software\Microsoft\ResKit\Nt\Setup /se #
Отображение всех подразделов и параметров со знаком "#" в качестве
разделителя для всех параметров типа REG_MULTI_SZ.
REG QUERY HKLM /f SYSTEM /t REG_SZ /c /e
Отображение раздела, параметра и данных с учетом реестра букв для точных
совпадений с "SYSTEM" типа REG_SZ из корневого раздела HKLM
REG QUERY HKCU /f 0F /d /t REG_BINARY
Отображение раздела, параметра и данных для совпадений с "0F"
типа REG_BINARY среди данных в корневом разделе HKCU
REG QUERY HKLM\SOFTWARE /ve
Отображение параметра и данных для пустого значения (по умолчанию)
в разделе HKLM\SOFTWARE
**reg copy** — копировать данные из одной ветки реестра в другую.
REG COPY HKLM\Software\MyCo\MyApp HKLM\Software\MyCo\SaveMyApp /s
Копирует все подразделы и параметры раздела MyApp в раздел SaveMyApp
REG COPY \\ZODIAC\HKLM\Software\MyCo HKLM\Software\MyCo1
Копирует все параметры раздела MyCo с компьютера ZODIAC
в раздел MyCo1 на локальном компьютере
**reg compare** — сравнить две ветки реестра.
REG COMPARE HKLM\Software\MyCo\MyApp HKLM\Software\MyCo\SaveMyApp
Сравнивает все значения в разделе MyApp со значениями раздела SaveMyApp
REG COMPARE HKLM\Software\MyCo HKLM\Software\MyCo1 /v Version
Сравнивает значения Version в разделах MyCo и MyCo1
REG COMPARE \\ZODIAC\HKLM\Software\MyCo \\. /s
Сравнивает все подразделы и значения параметров в разделе
HKLM\Software\MyCo реестра на компьютере ZODIAC с аналогичным разделом
на текущем компьютере
**reg export** — экспорт данных реестра в REG файл.
REG EXPORT HKLM\Software\MyCo\MyApp AppBkUp.reg
Экспорт всех подразделов и параметров раздела MyApp в файл AppBkUp.reg
**reg import** — импорт данных в реестр из REG файла.
REG IMPORT AppBkUp.reg
Импорт записей реестра из файла AppBkUp.reg
**reg flags** — работа с флагами реестра.
REG FLAGS HKLM\Software\MyCo\MyApp QUERY
Отображает текущие флаги раздела MyApp.
REG FLAGS HKLM\Software\MyCo\MyApp SET DONT_VIRTUALIZE /s
Устанавливает флаг DONT_VIRTUALIZE
(и удаляет флаги DONT_SILENT_FAIL и RECURSE_FLAG) для раздела MyApp
и всех его подразделов
**reg save, reg restore, reg load, reg unload** — бэкап и восстановление реестра с помощью файлов HIV.
REG SAVE HKLM\Software\MyCo\MyApp AppBkUp.hiv
Сохранение куста MyApp в файл AppBkUp.hiv текущей папки
REG RESTORE HKLM\Software\Microsoft\ResKit NTRKBkUp.hiv
Восстановление файла NTRKBkUp.hiv заменой раздела ResKit
REG LOAD HKLM\TempHive TempHive.hiv
Загрузка файла TempHive.hiv в раздел HKLM\TempHive
REG UNLOAD HKLM\TempHive
Выгрузка куста реестра TempHive в HKLM
[[https://internet-lab.ru/regedit_cmd_bat|Ссылка на источник статьи]]