PowerShell からレジストリ キーの値を取得する方法は次のとおりです。
Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion CommonFilesDir
ただし、そのコマンドは、私が通常必要としないいくつかの追加のプロパティを返します。
CommonFilesDir : C:\Program Files\Common Files
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
PSChildName : CurrentVersion
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
この場合は文字列である実際の値が必要です。それを行うには、より冗長なものを使用する必要があります。
$commonFilesDir = (Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion CommonFilesDir).CommonFilesDir
独自のエイリアスを記述する以外に、プロパティ名を 2 回記述せずに文字列を取得する方法はありますか?
次のコマンドを実行できますが、PSObject が返されます。
Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion | Select CommonFilesDir