跳转至

注册表操作命令

概述

Windows注册表是存储系统配置信息的层次数据库,包含硬件、软件、用户偏好等设置。

reg命令

reg - 注册表控制台工具

reg命令

用于在命令行中操作注册表的命令行工具。

查询注册表

Text Only
reg query keyname [/v valuename | /ve] [/s] [/se separator] [/f data] [/k] [/d] [/c] [/z]

示例

Text Only
# 查询键下的所有值
reg query HKLM\Software\Microsoft\Windows\CurrentVersion

# 查询特定值
reg query HKLM\Software\Microsoft\Windows\CurrentVersion /v ProductName

# 查询默认值
reg query HKLM\Software\Microsoft\Windows\CurrentVersion /ve

# 递归查询子键
reg query HKLM\Software\Microsoft /s

# 搜索包含特定数据的键
reg query HKLM\Software /f "Microsoft" /s

# 搜索键名
reg query HKLM\Software /f "Windows" /k /s

# 搜索数据
reg query HKLM\Software /f "3.11" /d /s

添加注册表项

Text Only
reg add keyname [/v valuename | /ve] [/t type] [/s separator] [/d data] [/f]

数据类型: - REG_SZ:字符串 - REG_MULTI_SZ:多字符串 - REG_EXPAND_SZ:可扩展字符串 - REG_DWORD:32位整数 - REG_QWORD:64位整数 - REG_BINARY:二进制数据 - REG_NONE:无类型

示例

Text Only
# 添加字符串值
reg add HKCU\Software\MyApp /v Version /t REG_SZ /d "1.0" /f

# 添加DWORD值
reg add HKCU\Software\MyApp /v Enabled /t REG_DWORD /d 1 /f

# 添加二进制值
reg add HKCU\Software\MyApp /v Data /t REG_BINARY /d fe340ead /f

# 添加默认值
reg add HKCU\Software\MyApp /ve /d "Default" /f

# 强制覆盖(不提示确认)
reg add HKCU\Software\MyApp /v Name /t REG_SZ /d "Test" /f

删除注册表项

Text Only
reg delete keyname [/v valuename | /ve | /va] [/f]

示例

Text Only
# 删除特定值
reg delete HKCU\Software\MyApp /v Version /f

# 删除默认值
reg delete HKCU\Software\MyApp /ve /f

# 删除键下所有值
reg delete HKCU\Software\MyApp /va /f

# 删除整个键(包括子键)
reg delete HKCU\Software\MyApp /f

复制注册表项

Text Only
reg copy keyname1 keyname2 [/s] [/f]

示例

Text Only
# 复制键
reg copy HKCU\Software\MyApp HKCU\Software\MyAppBackup /s /f

比较注册表项

Text Only
reg compare keyname1 keyname2 [/v valuename | /ve] [/s] [/oa | /od | /os | /on]

示例

Text Only
reg compare HKCU\Software\MyApp HKCU\Software\MyAppBackup
reg compare HKCU\Software\MyApp HKCU\Software\MyAppBackup /s

导出注册表

Text Only
reg export keyname filename [/y]

示例

Text Only
1
2
3
4
5
6
7
8
# 导出整个键
reg export HKCU\Software\MyApp myapp.reg

# 导出HKLM
reg export HKLM\Software\Microsoft\Windows\CurrentVersion version.reg

# 覆盖已有文件
reg export HKCU\Software\MyApp myapp.reg /y

导入注册表

Text Only
reg import filename

示例

Text Only
reg import myapp.reg

保存注册表配置单元

Text Only
reg save keyname filename [/y]

示例

Text Only
reg save HKLM\Software software.hiv

还原注册表配置单元

Text Only
reg restore keyname filename

示例

Text Only
reg restore HKLM\Software software.hiv

加载注册表配置单元

Text Only
reg load keyname filename

示例

Text Only
reg load HKLM\TempHive c:\temp\hive.hiv

卸载注册表配置单元

Text Only
reg unload keyname

示例

Text Only
reg unload HKLM\TempHive

注册表根键

缩写 完整名称 说明
HKCR HKEY_CLASSES_ROOT 文件关联和COM信息
HKCU HKEY_CURRENT_USER 当前用户设置
HKLM HKEY_LOCAL_MACHINE 本地机器设置
HKU HKEY_USERS 所有用户配置文件
HKCC HKEY_CURRENT_CONFIG 当前硬件配置

常用注册表路径

系统启动

Text Only
1
2
3
4
5
6
# 开机启动程序
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\Software\Microsoft\Windows\CurrentVersion\Run

# 服务
HKLM\System\CurrentControlSet\Services

Windows设置

Text Only
1
2
3
4
5
6
7
8
# Windows版本
HKLM\Software\Microsoft\Windows NT\CurrentVersion

# 系统策略
HKLM\Software\Policies\Microsoft\Windows

# 用户策略
HKCU\Software\Policies\Microsoft\Windows

网络设置

Text Only
1
2
3
4
5
# TCP/IP设置
HKLM\System\CurrentControlSet\Services\Tcpip\Parameters

# 网络适配器
HKLM\System\CurrentControlSet\Control\Network

安全设置

Text Only
1
2
3
4
5
# 安全策略
HKLM\Software\Microsoft\Windows\CurrentVersion\Policies

# Windows Defender
HKLM\Software\Policies\Microsoft\Windows Defender

PowerShell注册表操作

查看注册表

PowerShell
# 列出注册表驱动器
Get-PSDrive -PSProvider Registry

# 查看键
Get-ChildItem HKLM:\Software\Microsoft\Windows\CurrentVersion

# 查看值
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion

# 获取特定值
(Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion).ProductName

# 递归搜索
Get-ChildItem HKLM:\Software -Recurse -ErrorAction SilentlyContinue | Where-Object {$_.Name -like "*Windows*"}

创建注册表项

PowerShell
1
2
3
4
5
6
7
# 创建键
New-Item -Path HKCU:\Software\MyApp -Force

# 创建值
New-ItemProperty -Path HKCU:\Software\MyApp -Name "Version" -Value "1.0" -PropertyType String -Force
New-ItemProperty -Path HKCU:\Software\MyApp -Name "Enabled" -Value 1 -PropertyType DWord -Force
New-ItemProperty -Path HKCU:\Software\MyApp -Name "Data" -Value ([byte[]]@(0xfe,0x34,0x0e,0xad)) -PropertyType Binary -Force

修改注册表值

PowerShell
Set-ItemProperty -Path HKCU:\Software\MyApp -Name "Version" -Value "2.0"

删除注册表项

PowerShell
1
2
3
4
5
# 删除值
Remove-ItemProperty -Path HKCU:\Software\MyApp -Name "Version"

# 删除键
Remove-Item -Path HKCU:\Software\MyApp -Recurse -Force

检查注册表项是否存在

PowerShell
1
2
3
if (Test-Path HKCU:\Software\MyApp) {
    Write-Host "Registry key exists"
}

导出注册表

PowerShell
reg export HKCU\Software\MyApp myapp.reg /y

导入注册表

PowerShell
reg import myapp.reg

实用脚本

禁用Windows Update自动重启

Text Only
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v NoAutoRebootWithLoggedOnUsers /t REG_DWORD /d 1 /f

显示文件扩展名

Text Only
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t REG_DWORD /d 0 /f

显示隐藏文件

Text Only
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v Hidden /t REG_DWORD /d 1 /f

禁用防火墙

Text Only
reg add "HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile" /v EnableFirewall /t REG_DWORD /d 0 /f

添加开机启动项

Text Only
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /v MyApp /t REG_SZ /d "C:\MyApp\app.exe" /f

备份重要注册表项

Text Only
1
2
3
4
5
6
7
@echo off
set backup_dir=C:\RegBackup
mkdir %backup_dir%
reg export "HKLM\SOFTWARE" "%backup_dir%\HKLM_Software.reg" /y
reg export "HKLM\SYSTEM" "%backup_dir%\HKLM_System.reg" /y
reg export "HKCU\Software" "%backup_dir%\HKCU_Software.reg" /y
echo Backup completed

搜索注册表中的特定字符串

PowerShell
Search-Registry -Path HKLM:\SOFTWARE -SearchString "Microsoft" -Recurse

注意事项

注册表操作风险

  • 修改注册表可能导致系统不稳定
  • 操作前务必备份注册表
  • 不熟悉的键值不要随意修改
  • 建议创建系统还原点

备份注册表

Text Only
reg export HKLM hklm_backup.reg /y
reg export HKCU hkcu_backup.reg /y

创建还原点

PowerShell
Checkpoint-Computer -Description "Before registry changes"

参考资料