もくじ
📝 はじめに
PowerShellでレジストリを確認しようとしたとき、
「GUI(regedit)を開くのは少し面倒」
「スクリプトでレジストリを一覧表示したい」
と感じたことはありませんか?
そんなときに役立つのが、
Get-ChildItem HKLM:\ を使ったレジストリの一覧表示です。
この記事では、PowerShellからレジストリを安全に確認する基本として、
HKLM(HKEY_LOCAL_MACHINE)の中身を表示する方法を解説します。
- レジストリの構造をざっと把握したい
- 特定のキーが存在するか確認したい
- スクリプトでレジストリを調査したい
✅ このコマンドでできること(要点)
- レジストリキーをフォルダ一覧のように表示できる
- HKLM配下の構造をPowerShellで確認できる
- GUIを使わずにレジストリを調査できる
- 他のコマンドと組み合わせて絞り込みができる
✅ Get-ChildItem HKLM:\ でできること
Get-ChildItem は、
ファイルやフォルダの一覧を表示するためのコマンドですが、
PowerShellではレジストリも「ドライブ」として扱えます。
HKLM:\ は
HKEY_LOCAL_MACHINE を表しており、
その配下をフォルダ構造のように一覧表示できます。
考え方としては、
「レジストリをフォルダとして覗いている」イメージです。
🧩 基本構文
Get-ChildItem HKLM:\
このコマンドを実行すると、
HKEY_LOCAL_MACHINE の直下にあるキー一覧が表示されます。
▶ 基本的な使い方(まずこれだけ)
🔹 HKLM の直下を一覧表示する
Get-ChildItem HKLM:\
SYSTEM や SOFTWARE などの主要なキーが表示されれば、
正しくレジストリを参照できています。
この結果が出ていれば、基本操作は問題ありません。
🔹 特定のキー配下を表示する
Get-ChildItem HKLM:\SOFTWARE
SOFTWARE 配下のサブキー一覧が表示されます。
regedit で展開する操作を、PowerShellで行っているイメージです。
🛠 よく使われる指定例
🔹 再帰的に一覧表示する
Get-ChildItem HKLM:\SOFTWARE -Recurse
-Recurse を指定すると、
配下のキーをすべて再帰的に表示します。
数が多くなるため、結果が大量に出る点には注意が必要です。
🔹 エラーを抑制して表示する
Get-ChildItem HKLM:\SOFTWARE -ErrorAction SilentlyContinue
アクセス権限の問題で表示できないキーがあっても、
エラーを表示せずに処理を続行できます。
💼 実務でよく使う使用例(応用)
🔹 特定の名前を含むキーを探す
Get-ChildItem HKLM:\SOFTWARE | Where-Object {
$_.Name -like "*Microsoft*"
}
レジストリキー名を条件で絞り込みたい場合に便利です。
🔹 結果をテキストに保存する
Get-ChildItem HKLM:\SOFTWARE | Out-File C:\temp\registry_list.txt
- Where-Object で条件検索
- Select-Object で表示項目を整理
- Out-File で調査結果を保存
🧩 よくある勘違い・つまずきポイント
- レジストリは通常のフォルダとは異なる
- 管理者権限がないと表示できないキーがある
- -Recurse で大量表示になることがある
- 値(Value)は Get-ItemProperty が必要
- 削除や変更は意図せず行わないよう注意が必要
🔄 cmdとの違いについて
cmd では reg query を使って
レジストリを確認しますが、
PowerShellではオブジェクトとして扱える点が大きな違いです。
一覧表示後にそのまま絞り込みや出力加工ができる点は、
PowerShellならではの強みです。
⚠ エラー・うまく動かないときの確認ポイント
- PowerShellを管理者として実行しているか
- 指定したパス(HKLM:\SOFTWARE など)が正しいか
- アクセス権限のあるキーかどうか
- 表示結果が多すぎて見逃していないか
🧠 注意点
レジストリはシステム動作に直結する重要な領域です。
一覧表示は安全ですが、
削除や変更を行う場合は十分に内容を理解した上で実行してください。
📌 まとめ
- Get-ChildItem HKLM:\ でレジストリを一覧表示できる
- レジストリはドライブとして扱える
- 条件指定や出力加工と組み合わせると調査が楽になる
- 次は Get-ItemProperty で値の確認を試すと理解が深まる
🔎 PowerShellコマンドを探す
やりたいことからPowerShellコマンドを探せます。
- ファイルを削除したい
- 一覧を表示したい
- 文字列を検索したい
- 条件で絞り込みたい
- エラーや実行できない原因を調べたい
- レジストリを確認したい
- 特定の設定値を探したい
