← Back to Home

Windows RegistryをPowerShellで使う

Views: 910

You can try the commands on our interactive shell.

Windows RegistryをPowerShellで使う

Windows registryは、Windowsシステムの一部であり、設定や構成データを保持しています。ここでは、PowerShellスクリプトを使用してRegistryを操作する方法について学びます。

レジストリの階層構造

Registryをスクリプトする前には、レジストリの階層構造を理解することが重要です。Registryは、木のように組織化されており、以下のトップレベルのキーがあります。

基本的なRegistry操作

PowerShellは、Registryを操作するためのいくつかのcmdletを提供しています。以下は基本的な操作です。

1. 新しいRegistryキーを作成する

New-Item -Path 'HKCU:\Software\TestApp' -ItemType Key

このコマンドでは、新しいキーTestAppHKEY_CURRENT_USER\Softwareの下に作成します。

2. レジストリ値を設定する

Set-ItemProperty -Path 'HKCU:\Software\TestApp' -Name 'Value1' -Type String -Value 'Hello, World!'

このコマンドでは、新しい値Value1を文字列'Hello, World!'で設定し、キーHKEY_CURRENT_USER\Software\TestAppの下に作成します。

3. レジストリ値を読み取る

Get-ItemProperty -Path 'HKCU:\Software\TestApp' -Name 'Value1'

このコマンドでは、値Value1をキーHKEY_CURRENT_USER\Software\TestAppから読み取ります。出力はPSRegistryPropertyオブジェクトになります。

4. レジストリキーの削除

Remove-Item -Path 'HKCU:\Software\TestApp' -Force

このコマンドでは、キーTestAppHKEY_CURRENT_USER\Softwareの下から削除します。 -Forceパラメーターは、確認ダイアログが出るようにすることができます。

高度なRegistry操作

以下は、高度なRegistry操作です。

1. レジストリキーと値の列挙

Get-ChildItem -Path 'HKCU:\Software' | ForEach-Object { Write-Host $_.Name }

このコマンドでは、HKEY_CURRENT_USER\Softwareの下の子キーを列挙し、名前をコンソールに出力します。

2. レジストリ値の検索

Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion' -Search 'keyname:*'

このコマンドでは、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersionの下の子キーを検索し、名前が含む文字列keyname:を含むキーの名前を出力します。

3. レジストリデータのエクスポートとインポート

Export-Registry -Path 'HKCU:\Software\TestApp' -DestinationFile 'C:\path\to\exported.reg'

このコマンドでは、キーTestAppHKEY_CURRENT_USER\Softwareの下からエクスポートし、ファイルexported.regに保存します。

Import-Registry -Path 'C:\path\to\imported.reg' -Force

このコマンドでは、レジストリデータをファイルimported.regからインポートします。 -Forceパラメーターは、確認ダイアログが出るようにすることができます。

最良のプラクティス

PowerShellでRegistryを操作する際には、以下の最良のプラクティスに注意してください。

結論

このチュートリアルでは、PowerShellでWindows Registryを操作する方法について学びました。基本的な操作と最良のプラクティスをマスターすると、Registryを使用したいくつかの用途に対応できます。また、レジストリ値を変更する際には注意してくださいし、スクリプトを完全に検証してください。

追加リソース

Try it Now!