Windowsのバッチコマンド『reg』の使い方完全ガイド|レジストリ操作を簡単に!

Windowsのシステム設定を変更したり、自動化したりする際に「レジストリ(Registry)」の編集が必要になることがあります。
通常、レジストリエディター(regedit)を使いますが、バッチスクリプトで処理を自動化したい場合は**「regコマンド」**が便利です。
regコマンドを使えば、レジストリのキーや値の取得、追加、変更、削除がコマンドライン上で簡単に実行できます。

本記事では、Windowsのバッチファイルで使えるregコマンドの基本から応用までを詳しく解説します。
具体的な使用例を交えて、レジストリ操作をスムーズに行う方法を学んでいきましょう。

regコマンドとは?

Windowsのレジストリ(Registry)は、OSやアプリケーションの設定情報を保存するデータベースです。
通常、GUIの「レジストリエディター(regedit)」を使って編集しますが、コマンドラインやバッチファイルで操作する場合はregコマンド
を使用します。

regコマンドを使うメリット

  • 自動化が可能(バッチファイルで実行できる)
  • レジストリの変更履歴を管理しやすい
  • リモートPCのレジストリ操作ができる

次に、regコマンドの基本構文を見ていきましょう。


regコマンドの基本構文

regコマンドは、以下の形式で使用します。

reg [操作] [オプション] [パラメータ]

主な操作(サブコマンド)は以下の通りです:

コマンド説明
reg query指定したレジストリキーや値を取得
reg addレジストリキーや値を追加
reg deleteレジストリキーや値を削除
reg copyレジストリキーや値をコピー
reg exportレジストリのデータをファイルに保存
reg importファイルからレジストリを復元
reg compare2つのレジストリキーを比較
reg saveレジストリキーをファイルに保存
reg restore保存したレジストリを復元
reg loadハイブファイルを読み込む
reg unloadハイブファイルを削除

次に、それぞれの操作方法を詳しく解説します。


reg query(レジストリの検索)

レジストリ内の特定のキーや値を取得するコマンドです。

基本構文

reg query [キーのパス] [/v 値名 | /s]

例:レジストリの特定の値を取得

reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion" /v ProgramFilesDir

出力例

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
ProgramFilesDir REG_SZ C:\Program Files

例:指定キー以下のすべての値を取得

reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion" /s

reg add(レジストリの追加・変更)

新しいレジストリキーや値を追加・変更するコマンドです。

基本構文

reg add [キーのパス] /v 値名 /t データ型 /d データ [/f]

例:新しいレジストリキーを追加

reg add "HKEY_CURRENT_USER\Software\MyApp" /v Setting1 /t REG_SZ /d "TestValue" /f

ポイント

  • /t REG_SZ → 文字列値(REG_SZ)
  • /d "TestValue" → 設定するデータ
  • /f → 確認なしで実行(なければエラーを防ぐ)

reg delete(レジストリの削除)

レジストリのキーや値を削除するコマンドです。

基本構文

reg delete [キーのパス] [/v 値名 | /va] [/f]

例:特定の値を削除

reg delete "HKEY_CURRENT_USER\Software\MyApp" /v Setting1 /f

例:キー以下のすべての値を削除

reg delete "HKEY_CURRENT_USER\Software\MyApp" /f

reg export & reg import(レジストリのエクスポート・インポート)

レジストリのバックアップや復元に使用します。

レジストリをエクスポート

reg export "HKEY_CURRENT_USER\Software\MyApp" C:\Backup\myapp.reg /y

レジストリをインポート

reg import C:\Backup\myapp.reg

reg copy(レジストリのコピー)

レジストリキーを別の場所にコピーするコマンドです。

基本構文

reg copy [元キーのパス] [コピー先キーのパス] [/s] [/f]

例:レジストリキーをコピー

reg copy "HKEY_LOCAL_MACHINE\SOFTWARE\MyApp" "HKEY_LOCAL_MACHINE\SOFTWARE\MyAppBackup" /s /f

reg compare(レジストリの比較)

2つのレジストリキーを比較し、違いを表示するコマンドです。

基本構文

reg compare [キーのパス1] [キーのパス2] [/v 値名]

例:2つのキーを比較

reg compare "HKEY_LOCAL_MACHINE\SOFTWARE\MyApp" "HKEY_LOCAL_MACHINE\SOFTWARE\MyAppBackup" /s

応用編:バッチファイルでregコマンドを活用

regコマンドをバッチスクリプトで活用すれば、レジストリの変更を自動化できます。

例:起動時に特定のレジストリ設定を変更するバッチ

@echo off
reg add "HKEY_CURRENT_USER\Software\MyApp" /v Setting1 /t REG_SZ /d "AutoConfig" /f
exit

このバッチを「スタートアップ」に入れれば、ログイン時に自動実行できます。


まとめ

Windowsのregコマンドを使えば、レジストリの操作をバッチスクリプトで簡単に管理できます。

  • reg query → レジストリの値を取得
  • reg add → 新しいキーや値を追加
  • reg delete → キーや値を削除
  • reg export & reg import → レジストリのバックアップ&復元
  • reg compare → 2つのレジストリを比較

バッチスクリプトと組み合わせることで、レジストリ管理を自動化できるので、ぜひ活用してください!

タイトルとURLをコピーしました