2016-07-28 69 views
3

如何將這兩個俱樂部分開?powershell中的對象

Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*|` 
Where-Object {$_.displayname -like "*Database Engine Services*" } | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |Format-Table -AutoSize 

Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | 
Where-Object {($_.displayname -like "*Engagement*") } |` 
Format-Table –AutoSize 

回答

2

我使用RegEx方法將您的Where-Object過濾縮減爲單個實例,但您也可以使用-OR將其還原爲單個實例。另外,不需要在Format-Table中執行Select-Object,因爲只需使用Format-Table就可以指定要顯示的屬性。

Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Where-Object { 
    $_.DisplayName -match '^Database Engine Services|Engagement' 
} | Format-Table DisplayName, DisplayVersion, Publisher, InstallDate -AutoSize 

下面是使用-OR你般的語句替代:

Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Where-Object { 
    $_.DisplayName -LIKE 'Database Engine Services*' -OR $_.DisplayName -LIKE '*Engagement*' 
} | Format-Table DisplayName, DisplayVersion, Publisher, InstallDate -AutoSize 
+1

謝謝@boeprox先生。我非常喜歡你和你的Get-SQLInstance,並且我習慣於自動化我的項目。是的,這解決了我的問題。謝謝你,先生。 – SQLBoy