Как почистить реестр через командную строку

REG – редактирование реестра Windows в командной строке.

Утилита командной строки REG. EXE присутствует во всех версиях операционных систем семейства Windows и используется для добавления, изменения, удаления и просмотра параметров и ключей реестра.

Формат командной строки:

REG [Список параметров]

QUERY — поиск и отображение содержимого реестра.

ADD — добавление новых разделов и записей в реестр.

DELETE — удаление разделов и записей из реестра.

COPY — копирование разделов и записей из реестра.

SAVE — сохранение данных реестра в файл.

LOAD — загрузка куста реестра

UNLOAD — выгрузка куста реестра в файл, ранее загруженный операцией LOAD.

RESTORE — восстановление данных реестра из файла.

COMPARE — сравнение разделов и параметров реестра.

EXPORT — экспорт данных реестра в. reg-файл.

IMPORT — импорт данных реестра из. reg-файла.

FLAGS — отображение или изменение флагов разделов реестра.

Код возврата: (за исключением REG COMPARE):

0 – Успешно
1 — С ошибкой

Для каждой операции, задаваемой в командной строке REG, используются свои параметры. Для получения справки по определенной операции введите:

Результат выполнения операции зависит от прав пользователя по отношению к данным реестра. Редактирование реестра является потенциально опасной операцией и при необдуманных или ошибочных действиях может привести к неработоспособности системы. Прежде, чем вносить какие-либо изменения в реестр, нужно сделать его резервную копию и освоить процедуру восстановления системы в случае ее краха по причине неверного содержимого реестра, в том числе, и для случаев, когда загрузку Windows выполнить невозможно.

REG QUERY – отобразить содержимое реестра.

REG QUERY имя_раздела [/v [имя_параметра] | /ve] [/s] [/f данные [/k] [/d] [/c] [/e]] [/t тип] [/z] [/se разделитель]

Параметры командной строки:

имя_раздела — может включать имя удаленного компьютера в формате \\компьютер\полное_имя_раздела . Если имя компьютера не задано, то по умолчанию используется текущий компьютер. На удаленных компьютерах доступны только разделы HKLM и HKU. полное_имя_раздела — путь в форме корневой_раздел\подраздел . Корневой раздел — [ HKLM | HKCU | HKCR | HKU | HKCC ]. Подраздел — полное имя раздела реестра в указанном корневом_разделе.

/v — Запросы требуемых параметров в указанном разделе реестра. Если не указано, запрашиваются все параметры раздела. Аргумент этого параметра может быть необязательным, только если задан параметр /f. Это указывает на поиск только в именах параметров реестра.

/ve — Запросы параметра по умолчанию или с пустым именем (по умолчанию).

/s — Запрос всех вложенных подразделов и их параметров (аналогично команде dir /s).

/se — Указание разделителя (длиной в 1 знак) в строке данных для REG_MULTI_SZ. По умолчанию в качестве разделителя используется «\0».

/f — Данные или шаблон для поиска. Если строка содержит пробелы, заключайте ее в кавычки. Значение по умолчанию: «*».

/k — Указывает на поиск только в именах разделов.

/d — Указывает на поиск только в данных.

/c — Указывает на учет регистра знаков при поиске. По умолчанию при поиске регистр знаков не учитывается.

/e — Указывает на возврат только точных совпадений. По умолчанию возвращаются все совпадения.

/t — Указывает тип данных параметра реестра. Допустимые типы: REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ, REG_DWORD, REG_QWORD, REG_BINARY, REG_NONE. По умолчанию будут использоваться все типы.

/z — Подробности: отображение числового кода типа имени значения.

reg query /? — отобразить справку по использованию.

REG QUERY HKLM\Software\Microsoft\ResKit /v Version — отобразить значение параметра реестра Version

reg query \\SERVER\HKLM\Software\Microsoft\Windows\CurrentVersion\Run — отобразить содержимое раздела автоматически запускаемых программ для всех пользователей удаленного компьютера SERVER. Для успешного выполнения команды необходимо наличие соответствующих прав пользователя по отношению к удаленной системе и на удаленном компьютере должна быть запущена служба RemoteRegistry (Удаленный реестр).

Пример отображаемой информации:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
RTHDVCPL REG_SZ «C:\Program Files\Realtek\Audio\HDA\RtkNGUI64.exe» — s
Acronis Scheduler2 Service REG_SZ «C:\Program Files (x86)\Common Files\Acronis\Schedule2\schedhlp. exe»
COMODO Internet Security REG_SZ C:\Program Files\COMODO\COMODO Internet Security\cistray. exe
StartCN REG_SZ «C:\Program Files\AMD\CNext\CNext\cnext. exe» atlogon

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 query hklm\system\currentcontrolset\control\safeboot /s /f «Adapter» /d — искать в данных строку Adapter в разделе реестра с параметрами безопасного режима загрузки Windows.

REG QUERY «HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders» /v «Start Menu» — отобразить расположение папки ”Главное меню” текущего пользователя.

REG QUERY HKCU\Console\ — отобразить параметры командной строки текущего пользователя.

REG QUERY HKCU\Console /v ScreenColors — отобразить параметр, определяющий цвет фона и цвет символов окна командной строки текущего пользователя.

Reg Query «HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion» /V ProductName — отобразить содержимое параметра реестра с названием Windows. Пример отображаемой информации при выполнении команды в среде Windows 10 Pro:

ProductName REG_SZ Windows 10 Pro

REG ADD — добавить или заменить существующий параметр реестра.

REG ADD [/v | /ve] [/t ] [/s ] [/d данные>] [/f] [/reg:32 | /reg:64]

Параметры командной строки:

имя_раздела — [\\ \] . Компьютер — имя удаленного компьютера. Если оно опущено, то по умолчанию используется локальный компьютер. На удаленном компьютере доступны только корневые разделы HKLM и HKU.

Раздел — КОРЕНЬ\ . КОРЕНЬ — [ HKLM | HKCU | HKCR | HKU | HKCC ]. Подраздел — полное имя подраздела реестра в указанном корневом разделе.

/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 add /? — отобразить подсказку по использованию команды.

REG ADD \\SERVER\HKLM\Software\MyCo — Добавляет раздел HKLM\Software\MyCo на удаленном компьютере SERVER

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%)

REG add HKCU\Console /v ScreenColors /t REG_DWORD /d 0xf0 — изменить настройки консоли текущего пользователя – черные буквы на белом фоне. Для записи данных в уже существующий параметр реестра потребуется подтверждение на запрос:

Параметр ScreenColors уже существует, заменить (Y — да/N — нет)?

Для подавления запроса необходимо использовать параметр /f :

REG add HKCU\Console /v ScreenColors /t REG_DWORD /d 0xf0 /f

Нужно учитывать, что изменение отображения фона и цвета символов для текущего сеанса консоли не произойдет. Изменения будут применены при следующем запуске командной строки.

REG DELETE — удалить существующий параметр реестра.

REG DELETE [/v | /ve | /va] [/f] [/reg:32 | /reg:64]

имя_раздела — [\\ \] . Компьютер — имя удаленного компьютера. Если оно опущено, то по умолчанию используется локальный компьютер. На удаленном компьютере доступны только корневые разделы HKLM и HKU.

Раздел — КОРЕНЬ\ . КОРЕНЬ — [ HKLM | HKCU | HKCR | HKU | HKCC ]. Подраздел — полное имя подраздела реестра в указанном корневом разделе.

имя_параметра — Имя параметра, удаляемого из выбранного раздела. Если оно опущено, удаляются все подразделы и значения указанного раздела.

/ve — Удаляет пустое имя параметра (по умолчанию).

/va — Удаляет все параметры в указанном разделе.

/f — Выполняет принудительное удаление без запроса подтверждения.

/reg:32 — Указывает, что к разделу реестра следует обращаться с помощью представления для 32-разрядных приложений.

/reg:64 — Указывает, что к разделу реестра следует обращаться с помощью представления для 64-разрядных приложений.

REG DELETE HKLM\Software\MyCo\MyApp\Timeout — Удаляет раздел реестра Timeout и все его подразделы и параметры.

REG DELETE \\SERVER\HKLM\Software\MyCo /v MTU — Удаляет параметр реестра MTU из раздела MyCo на компьютере SERVER

REG EXPORT — экспорт данных реестра в файл.

REG EXPORT [/y] [/reg:32 | /reg:64]

имя_раздела — в виде КОРЕНЬ\ (только локальный компьютер). КОРЕНЬ может быть [ HKLM | HKCU | HKCR | HKU | HKCC ]. Подраздел — полное имя подраздела реестра в одном из выбранных корневых разделов.

имя_файла — путь и имя файла в который экспортируются данные реестра.

/y — Выполнение замены существующего файла без запроса подтверждения.

/reg:32 — Указывает, что к разделу реестра следует обращаться с помощью представления для 32-разрядных приложений.

/reg:64 — Указывает, что к разделу реестра следует обращаться с помощью представления для 64-разрядных приложений.

REG EXPORT HKLM\Software\MyCo\MyApp AppBkUp. reg — Экспорт всех подразделов и параметров раздела MyApp в файл AppBkUp. reg

REG EXPORT HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run C:\saved\autoruns. reg — экспорт параметров автоматического запуска приложений для всех пользователей системы.

REG IMPORT — импорт данных реестра из файла.

REG IMPORT [/reg:32 | /reg:64]

имя_файла — путь и имя файла с данными для импорта. Импорт возможен только для локального компьютера.

REG IMPORT AppBkUp. reg — Импорт записей реестра из файла AppBkUp. reg

REG SAVE — сохранение данных реестра в файл.

REG SAVE [/y] [/reg:32 | /reg:64]

имя_раздела — в виде КОРЕНЬ\ . КОРЕНЬ может принимать значения [ HKLM | HKCU | HKCR | HKU | HKCC ]. подраздел — Полное имя подраздела реестра в одном из выбранных корневых разделов.

имя_файла — Путь и имя файла сохраняемых данных. Если путь не указан, то файл создается в текущей папке вызывающего процесса.

/y — Выполнение замены существующего файла без запроса подтверждения.

/reg:32 — Указывает, что к разделу реестра следует обращаться с помощью представления для 32-разрядных приложений.

/reg:64 — Указывает, что к разделу реестра следует обращаться с помощью представления для 64-разрядных приложений.

REG SAVE HKLM\Software\MyCo\MyApp AppBkUp. hiv — Сохранение раздела реестра MyApp в файл AppBkUp. hiv текущей папки.

REG SAVE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run C:\saved\autoruns. hiv — сохранение параметров автоматического запуска приложений для всех пользователей системы в файл autoruns. hiv в каталоге saved диска C: .

REG RESTORE — восстановление данных реестра их файла.

Для восстановления данных реестра используется содержимое файла, созданного при выполнении команды REG SAVE

REG RESTORE [/y] [/reg:32 | /reg:64]

имя_раздела — в виде КОРЕНЬ\ . КОРЕНЬ может принимать значения [ HKLM | HKCU | HKCR | HKU | HKCC ]. подраздел — Полное имя подраздела реестра в одном из выбранных корневых разделов.

имя_файла — Путь и имя файла, созданного при выполнении команды REG SAVE. Если путь не указан, то поиск файла выполняется в текущей папке вызывающего процесса.

REG RESTORE HKLM\Software\Microsoft\ResKit NTRKBkUp. hiv — восстановить содержимое реестра из файла NTRKBkUp. hiv текущего каталога.

Команды REG IMPORT/EXPORT и REG RESTORE/SAVE близки по назначению, однако используют разные форматы данных.

REG LOAD — загрузка данных реестра из файла куста.

Для загрузки используется файл куста реестра, полученный с помощью команды REG SAVE, или другой файл куста реестра, например, скопированный с другого компьютера.

Формат командной строки:

REG LOAD [/reg:32 | /reg:64]

имя_раздела в виде КОРЕНЬ\подраздел (только локальный компьютер). КОРЕНЬ может принимать только [ HKLM | HKU]. подраздел — Имя подраздела реестра, в который загружается файл куста.

имя_файла — путь и имя файла куста, подлежащего загрузке.

REG LOAD HKLM\TempHive TempHive. hiv — Загрузка файла TempHive. hiv в раздел HKLM\TempHive

Обычно, команда REG LOAD используется совместно с REG UNLOAD для изменения данных реестра, содержащихся в файле куста.

REG LOAD HKU\TEMP «C:\Documents and Settings\Default User\NTUSER. DAT» — загрузить куст во временный раздел реестра.

REG ADD HKU\TEMP\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v newUserProfile /t REG_EXPAND_SZ /d «D:\setup. cmd» /f — выполнить запись во временном разделе.

REG UNLOAD HKU\TEMP — выгрузить временный раздел. При этом, выполненные изменения содержимого реестра будут сохранены в файле куста.

Загрузка и выгрузка данных с использованием файлов кустов позволяет редактировать данные реестра поддерживаемого формата, в том числе и ”чужой” операционной системы. В качестве файлов кустов можно использовать файлы из каталога \Windows\System32\config\ сторонней Windows, что позволяет восстановить ее работоспособность в некоторых случаях, требующих изменения параметров реестра, при невозможности загрузки и использования собственного редактора.

REG COMPARE — сравнение двух разделов данных реестра.

Формат командной строки:

REG COMPARE [/v | /ve] [вывод] [/s] [/reg:32 | /reg:64]

имя_раздела в виде [\\ \] . компьютер имя_раздела в виде КОРЕНЬ\подраздел . Если имя раздела 1 не указано, то имя раздела 2 равно имени раздела 1. КОРЕНЬ — [ HKLM | HKCU | HKCR | HKU | HKCC ]. подраздел — Полное имя подраздела реестра в одном из выбранных корневых разделов.

имя_параметра — Имя параметра реестра в выбранном разделе, подлежащее сравнению. Если опущено, то сравниваются все параметры в разделе.

/ve — Сравнение параметров раздела с пустым именем (по умолчанию).

/s — Сравнение всех подразделов и параметров.

/reg:32 — Указывает, что к разделу реестра следует обращаться с помощью представления для 32-разрядных приложений.

/reg:64 — Указывает, что к разделу реестра следует обращаться с помощью представления для 64-разрядных приложений.

Вывод — формат выводимых различий — [/oa | /od | /os | /on]
/oa — Вывод всех различий и совпадений.
/od — Вывод только различий.
/os — Вывод только совпадений.
/on — Без вывода.
Если Вывод не задан, то выводятся только различия.

0 — Успешно, сравниваемые данные идентичны
1 — При обработке произошла ошибка
2 — Успешно, сравниваемые данные отличаются

Символы в начале каждой строки читаются следующим образом:

= данные FullKey1 равны данным FullKey2
относится к данным FullKey1, если они отличаются от данных FullKey2
> относится к данным FullKey2, если они отличаются от данных FullKey1

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 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network /s — Сравнивает отличия параметров для безопасного режима загрузки и безопасного режима с поддержкой сети. REG COMPARE \\SERVER\HKLM\Software\MyCo \\. /s — Сравнивает все подразделы и значения параметров в разделе HKLM\Software\MyCo реестра на компьютере SERVER с аналогичным разделом на текущем компьютере.

reg compare HKLM\Software\Microsoft\Windows\CurrentVersion\Run \\192.168.1.1\HKLM\Software\Microsoft\Windows\CurrentVersion\Run — Сравнивает список автоматически стартующих программ для всех пользователей локального компьютера и удаленного компьютера с IP адресом 192.168.1.1. Для успешного выполнения команды на удаленном компьютере должна быть запущена служба ”Удаленный реестр”. Пример отображаемой информации с результатами сравнения:

Параметр: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run RTHDVCPL REG_SZ «C:\Program Files\Realtek\Audio\HDA\RtkNGUI64.exe» — s

> Параметр: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run Acronis Scheduler2 Service REG_SZ «C:\Program Files (x86)\Common Files\Acronis\Schedule2\schedhlp. exe»

> Параметр: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run COMODO Internet Security REG_SZ C:\Program Files\COMODO\COMODO Internet Security\cistray. exe

Результат сравнения: не совпадают

Операция успешно завершена.

REG FLAGS — просмотр, установка и сброс флагов реестра.

Формат командной строки:

REG FLAGS имя_раздела [QUERY | [/reg:32 | /reg:64]
REG FLAGS имя_раздела SET [DONT_VIRTUALIZE] [DONT_SILENT_FAIL] [RECURSE_FLAG]] [/reg:32 | /reg:64]

имя_раздела — «HKLM\Software»[\подраздел] (ограничено этими разделами только на локальном компьютере). подраздел — полное имя раздела реестра в узле HKLM\Software.

DONT_VIRTUALIZE DONT_SILENT_FAIL RECURSE_FLAG — Используется вместе с параметром SET; флаги, указанные в командной строке, будут установлены, не указанные — удалены.

/reg:32 — Указывает, что к разделу реестра следует обращаться с помощью представления для 32-разрядных приложений.

/reg:64 — Указывает, что к разделу реестра следует обращаться с помощью представления для 64-разрядных приложений.

reg flags HKLM\Software query — Отображает текущие флаги раздела HKLM\Software.

Пример отображаемой информации о флагах:

HKEY_LOCAL_MACHINE\Software
REG_KEY_DONT_VIRTUALIZE: CLEAR
REG_KEY_DONT_SILENT_FAIL: CLEAR
REG_KEY_RECURSE_FLAG: CLEAR

Операция успешно завершена.

REG FLAGS HKLM\Software\MyCo\MyApp SET DONT_VIRTUALIZE /s — Устанавливает флаг DONT_VIRTUALIZE (и удаляет флаги DONT_SILENT_FAIL и RECURSE_FLAG) для раздела MyApp и всех его подразделов.

http://ab57.ru/cmdlist/reg. html

Редактирование реестра Windows из командной строки, bat-файлы

На нашем ресурсе уже есть публикация, описывающая основной способ работы с системным реестром Windows : Изменение параметров cистемного реестра Windows. Также мы рассматривали способ автоматизации процесса при помощи специальных файлов: Создание reg-файлов. Синтаксис редактирования записей реестра — позволяющий значительно упростить монотонную работу и воспроизведение часто используемых настроек. В рамках данной статьи мы затронем логическое продолжение темы, а именно, поговорим о том, как редактировать реестр из командной строки.

Содержание статьи:

Использование bat-файлов для редактирования реестра

Точнее сказать, мы, разумеется, не будем раз за разом вручную прописывать нужные параметры в окне консоли, не для этого данный способ нужен, мы рассмотрим вариант внесения изменений в системный реестр Windows при помощи bat-файлов.

Достаточно подробно о создании и использовании батников речь шла в записи Пакетные файлы (bat, батники) Windows, ещё одна функция, которую можно и нужно использовать — изменение записей реестра при помощи cmd языка .
Использование батников для редактирования реестра иногда может быть выгоднее и удобнее, нежели работа со стандартными для этих целей reg-файлами.

  1. батники шире используются в администрировании;
  2. батники имеют режим тихого запуска (без всплывающих окон);
  3. батники можно запускать с повышенными правами, то есть от имени Администратора;
  4. с помощью бат-файлов возможна работа с реестром сетевых машин.

Именно для таких частных случаев будет полезно знать, как написать батник для редактирования системного реестра Windows.

Работа с реестром из командной строки

Синтаксис бат-файлов и процесс их создания описан в статье, приведённой выше, в данной же публикации затронем исключительно тему, касающуюся выполнения функции изменения реестра из командной строки.
Сразу отметим, что в bat-файлах не требуется заголовок в начале файла по типу того, что используется в reg-файлах: Windows Registry Editor Version 5.00 — здесь можно начинать писать команду с первой же строки.

Для начала приведём основные параметры, используемые при работе с реестром из командной строки:

  • /v — имя добавляемого/изменяемого ключа;
  • /ve — добавление пустого параметра;
  • /t — параметр для указания типа добавляемых/изменяемых данных;
  • /d — значение, присваиваемое параметру;
  • /s — применение команды ко всем вложенным ключам;
  • /f — отключение системных предупреждений при выполнении операции.

Но, конечно, основа любого батника Windows — сама команда. Итак, приведём список команд, используемых для редактирования реестра .

reg add — команда для добавления данных, будь то параметры, ключи или целые ветки.
Допустим, после вирусной атаки нам необходимо вернуть место хранения hosts файла (а также файлов lmhosts, networks и protocols) в директорию %SystemRoot%\System32\drivers\etc\ Для этого нужно выполнить команду:

Если немного применить фантазию и оформить батник, то код будет выглядеть примерно следующим образом:

Вот такой файл, как в архиве, у нас получится: drivers_etc
Остальные примеры в данной статье будем приводить вымышленные, дабы при их тестировании не вносить нежелательных изменений в реестр

reg delete — команда для удаления указанной информации из реестра компьютера.
Чтобы удалить определённый параметр, нам достаточно указать его полный путь после команды удаления. Пример:

Данная команда удалит параметр Save из указанной ветки.

reg copy — команда для копирования параметров и ключей из одной ветки реестра в другую.
Для копирования параметров достаточно после команды последовательно прописать сначала исходную ветку, а потом изменяемую. Например:

Данная команда скопирует всю информацию из ветки User1 в ветку User2.

reg export — команда для экспорта указанных веток реестра в виде *.reg файла на жёсткий диск.
Пример использования:

В результате выполнения данной команды будет создан рег-файл с бэкапом раздела Football.

reg import — команда, позволяющая импортировать данные из reg-файла в реестр системы.
Пример использования:

В результате выполнения данной команды записи из рег-файла будут импортированы в реестр.

reg query — данная команда возвращает значение запрашиваемых параметров и кустов реестра.
Пример использования:

В ответ будет возвращено значение параметра Run в реестре.

reg compare — команда позволяет сравнить две указанные последовательно ветки реестра.
Пример использования:

В ответ команда возвращает одно из значений: 0 — данные веток идентичны; 1 — при выполнении операции произошла ошибка; 2 — данные веток отличаются.

reg load , reg unload , reg save , reg restore — команды, позволяющие бэкапить и восстанавливать нужные ветки системного реестра Windows при помощи файлов *.hiv.

Изменение параметров реестра компьютера в сети

Выше мы рассмотрели достаточно широкие возможности батников в работе с реестром операционной системы. Последний момент, который отметим в контексте данной темы — это редактирование реестра компьютеров в локальной сети.

Для использования в работе с компьютерами в сети доступны все вышеперечисленные команды, единственное ограничение — операции из командной строки над реестром удалённых машин возможно производить только в разделах HKEY_ LOCAL_MACHINE (HKLM), и HKEY_USERS (HKU)

Ну и главное: чтобы работать с реестром компьютера в сети, необходимо в применяемой команде перед разделом указать имя удалённой машины, начинающееся с двойного обратного слеша.
При этом, в командах, обрабатывающих сразу несколько разделов (например, копирование из одного раздела в другой, сравнение веток), одна из веток может располагаться на локальном компьютере, а другая на компьютере в сети.

То есть, для копирования ветки с удалённой машины на наш компьютер необходимо выполнить следующую команду:

Указанная команда скопирует содержимое раздела User с компьютера FRIEND в локальной сети в реестр машины, с которой выполняется команда.

На этом заключительную статью описания общих принципов работы с реестром компьютера и с bat-файлами можно считать завершённой.
Безошибочных вам команд и корректных ключей реестра.

http://miradmin. ru/registry-cmd/

Редактирование реестра из командной строки

Реестр операционной системы Windows отвечает за работоспособность всей системы, крах реестра – крах системы. Однако, значимое количество вирусов или же просто талантливых людей, различными способами стремятся вывести его (реестр) из строя или же просто, получить над ним полный контроль, или как вариант — разрушительное редактирование реестра через командную стоку.

Вариантов поиздеваться над беззащитным пользователем, особенно, если под рукой реестр и командная строка Windows, довольно много. Так, может произойти ситуация, что через одного одаренного человека приходится переустанавливать заново операционную систему.

В этой статье я решил привести пример «издевательства» над собственной системой. Вначале, стоит обратить свое внимание на то, пути к каким программам прописаны в автозагрузке. Через меню Пуск доступна папка автозагрузка, но это лишь вершина айсберга, есть более верный способ просмотреть что находится в автозагрузке, например, используя утилиту, входящую в состав Windows — msconfig (Пуск/выполнить/msconfig). Реестр командная строка. Однако, мир не столь уж прост, и порой стоит прибегнуть к более продвинутым средствам, например утилита autoruns. exe. С ее помощью можно увидеть намного больше, на вкладке everything сразу бросаются в глаза различные разделы, в которых и прописано много чего интересного. Если не вникать в подробности, то для простого примера стоит обратить внимание на нижестоящие разделы:

  • HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce

Плюс, стоит бросить взгляд на раздел:

  • HKEY_CURRENT_USERS\Software\Microsoft\Windows\CurrentVersion\Run

Раздел HKLM охватывает всех пользователей, a HKCU — только текущего. Создадим нового пользователя с правами администратора:

Net user NewUser password /add — создаем пользователя NewUser и присваиваем ему пароль password

Net localgroup Администраторы NewUser /add — добавляем новоиспеченного пользователя в группу Администраторы.

Стоит напомнить, что сервер сценариев Windows Script Host для работы с реестром предоставляет объект Wscript. Shell и его методы RegWrite, RegRead и RegDelete.

Теперь попробуем, произвести редактирование системного реестра из командной строки, чтобы изменить пароль пользователя NewUser используя ветку HKLM. Для этого стоит зайти в систему через свою учетную запись и создать батник следующего содержимого (текстовый файл с расширением. bat):

net user NewUser newpass

Следующая задача состоит в том, что бы пользователь NewUser его запустил, для этого прописываем в командной строке:

reg add HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce /v NewPass /t reg_sz /d c:\Master. bat /f

В данном случае мы добавили в подраздел RunOnce новый параметр под названием NewPass со строковым типом reg_sz и прописали путь к нашему батнику. Теперь при входе в систему будет происходит запуск сценариях Master. bat, который в свою очередь изменит данные учетной записи.

Конечно, это не более чем простенький пример. Проблема в том, что редактировать реестр через командную строку стоит осмысленно , иначе, ваши действия могут принести совсем не тот результат, что ожидалось. Взять для примера печальную запись “ Редактирование реестра запрещено администратором системы ”, такую шалость производят, как правило, вирусы, если запрет был прописан в HKCU и вы являетесь администратором, то достаточно создать нового админ-пользователя, зайти через него в систему и открыв реестр, пробраться к нужному параметру:

HKEY_CURRENT_USERS\Software\Microsoft\Windows\CurrentVersion\Policies\System

тут параметр DisableRegistryTools изменить с единицы на ноль, или просто удалить. Но, можно так и не извращаться, достаточно использовать редактор от стороннего разработчика, например reglite , или, произвести редактирование реестра из командной строки:

REG DELETE HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System /v DisableRegistryTools

Однако, подсунуть свинью можно и собственными силами. Есть такая утилита как regini , она позволяет назначать разрешения к тем или иным веткам реестра. Не знаю почему, но на Семерке по команде regini /? выводится полная справка, а вот в Windows XP SP3 — ничего. Так вот, синтаксис утилиты довольно прост:

regini. exe — m «компьютер» «путь к файлу сценария»

если утилита используется локально, то параметр — m «компьютер» не нужен. Всего есть 17 пунктов, и каждый определяет те или иные разрешения.

Прежде всего, надо создать текстовый файл, в котором будет прописана нужная ветка и права для нее. Например, если в файле прописать строчку Registry\Machine\Security [1 17], то администраторам и учетной записи локальной системы будут предоставлены права полного доступа к ветви реестра HKLM\SECURITY. Но, эта утилита имеет один изъян — она затирает предыдущие права. Если посмотреть на разрешения для ветки SECURITY, то мы увидим, что полный доступ имеет только локальная система (SYSTEM), именно поэтому, под администратором вы не сможете просмотреть содержимое этого раздела. Редактируя реестр через командную строку, с использованием утилиты regini я решил дать для ветки SECURITY полный доступ для администратора (хотя это можно сделать в самом редакторе реестра), в файле сценария я прописал следующую строчку Registry\Machine\Security [1]. Реестр командная строка.

Утилиту запустил, путь к сценарию прописал. И о чудо, я имею доступ к этой ветке, ни о чем не подозревая, я перезагрузил систему. Увидев надпись при загрузке «отсутствуют права доступа к файлу» или что-то в этом роде, я понял НАДО БЫЛО И ЛОКАЛЬНОЙ СИСТЕМЕ ДАТЬ ДОСТУП! Благо, что на другом винте стояла тоже ХР, правда не SP3 a SP2, я банально заменил весь реестр и о чудо, система заработала!

Спасибо за внимание. Автор блога Владимир Баталий

http://scriptcoding. ru/2013/08/16/redaktirovanije-rejestra-iz-komandnoy-stroki/