1

複数の文字列名/データ値 (REG_SZ 型) を含むレジストリ キーがあります。名前/データ値をリストし、名前の値で並べ替えたいと思います。私はpowershellでこれをやりたいです。問題なく値を取得できますが、でGet-ItemPropertyソートする方法がわかりませんSort-Object。以下に示すように、ソートされていません。

$item = Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources' | Sort-Object


PSPath                      : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data S
                          ources
PSParentPath                : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI
PSChildName                 : ODBC Data Sources
PSProvider                  : Microsoft.PowerShell.Core\Registry
MSDWDATA_DEFAULT_SYBASE4.00 : DataDirect 4.0 Sybase Wire Protocol
Xtreme Sample Database 2003 : Microsoft Access Driver (*.mdb)
NYT_OPS                     : DataDirect 4.2 Sybase Wire Protocol
NYP_OPS                     : DataDirect 4.2 Sybase Wire Protocol
NYP_MSPA2                   : DataDirect 4.2 Sybase Wire Protocol
NYT_MSPA_A                  : DataDirect 4.2 Sybase Wire Protocol
4

2 に答える 2

4
$p = Get-ItemProperty -Path 'HKLM:\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources'
$p.PSObject.Properties | Sort-Object Value| Format-Table Name,Value
于 2012-11-05T14:11:10.033 に答える
0

本当に醜い:

$item = Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources' | 
out-string -Stream | sort 

または値による(より醜い):

$item = Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources' | 
out-string -Stream | sort { ($_.split(':'))[1] }
于 2012-11-05T13:39:49.030 に答える