Перейти к основному содержанию

Работа с реестром Windows из командной строки или BAT файла

Windows Terminal cmd

Нужно добавить запись в реестр с помощью 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

Теги

 

Похожие материалы

Windows — определить каким процессом занят порт

Определяем каким процессом занят порт. Делать это будем на Windows Server 2012 R2, но инструкция подходит и для других версий Windows. Для начала определим PID процесса

Теги