もくじ
📝 はじめに
PowerShellでレジストリを調べていると、
「キーは見つかったけれど、実際の値(データ)を確認したい」
「設定値をスクリプトで取得して条件分岐に使いたい」
と感じることはありませんか?
そんなときに使うのが、
Get-ItemProperty です。
この記事では、レジストリキーに保存されている値(Value)を取得する基本として、
PowerShell初心者でもつまずきにくい使い方を解説します。
- アプリやWindowsの設定値を確認したい
- 特定のレジストリ値が存在するか調べたい
- レジストリ値を条件分岐や判定に使いたい
✅ このコマンドでできること(要点)
- レジストリキーに保存された値を取得できる
- 複数の値をまとめて確認できる
- 取得した値を変数として扱える
- スクリプト処理の条件判定に利用できる
✅ Get-ItemProperty でできること
Get-ItemProperty は、
レジストリキーに紐づく「値(名前とデータ)」を取得するためのコマンドです。
Get-ChildItem が
「キー(フォルダ)」を一覧表示するのに対し、
Get-ItemProperty はキーの中身(設定値)を取り出す役割があります。
考え方としては、
「フォルダを開いて、設定ファイルの中身を読む」イメージです。
🧩 基本構文
Get-ItemProperty レジストリパス
指定したレジストリキーに含まれる値が、
プロパティとして表示されます。
▶ 基本的な使い方(まずこれだけ)
🔹 レジストリ値を取得する
Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion
インストール情報などの値が表示されれば、
正しくレジストリ値を取得できています。
この結果が出ていれば、基本操作は問題ありません。
🔹 特定の値を参照する
$data = Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion
$data.ProgramFilesDir
取得した値は変数に入れて、
個別のプロパティとして参照できます。
🛠 よく使われる指定例
🔹 特定の値名だけ取得する
Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion |
Select-Object ProgramFilesDir
必要な値だけを絞って確認したい場合に便利です。
🔹 エラーを抑制して取得する
Get-ItemProperty HKLM:\SOFTWARE\NoSuchKey -ErrorAction SilentlyContinue
キーが存在しない場合でも、
エラーを表示せずに処理を続行できます。
💼 実務でよく使う使用例(応用)
🔹 レジストリ値で条件分岐する
$value = Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion
if ($value.ProgramFilesDir) {
"値が存在します"
}
🔹 レジストリ値をログに残す
Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion |
Out-File C:\temp\registry_value.txt
- Get-ChildItem でキーを特定
- Select-Object で必要な値だけ抽出
- Out-File で調査結果を保存
🧩 よくある勘違い・つまずきポイント
- キーの一覧取得と値の取得はコマンドが異なる
- 存在しないキーを指定するとエラーになる
- 管理者権限が必要なレジストリがある
- 値名は正確に指定する必要がある
- 既定値は別扱いになる場合がある
🔄 cmdとの違いについて
cmd では reg query を使って
レジストリ値を確認しますが、
PowerShellでは取得結果をオブジェクトとして扱えます。
そのため、取得後に条件分岐や加工がしやすい点が
PowerShellの大きな利点です。
⚠ エラー・うまく動かないときの確認ポイント
- 指定したレジストリパスが正しいか
- 管理者権限が必要なキーではないか
- 値名のスペルミスがないか
- -ErrorAction の指定有無
🧠 注意点
レジストリ値の取得自体は安全ですが、
取得した値をもとに削除や変更を行う場合は注意が必要です。
事前に内容を確認し、意図しない操作にならないようにしましょう。
📌 まとめ
- Get-ItemProperty はレジストリ値取得の基本
- キーの中にある設定データを確認できる
- 条件分岐やログ取得に応用しやすい
- 次は Test-Path と組み合わせると理解が深まる
🔎 PowerShellコマンドを探す
やりたいことからPowerShellコマンドを探せます。
- ファイルを削除したい
- 一覧を表示したい
- 文字列を検索したい
- 条件で絞り込みたい
- エラーや実行できない原因を調べたい
- レジストリを確認したい
- 特定の設定値を取得したい
