0
在下面的腳本:變量擴展在PowerShell中凡對象cmdlet
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | where {$_.DisplayName -like '*Visual*' } | Select-Object -ExpandProperty DisplayName
$productName="Visual"
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | where {$_.DisplayName -like '*$productName*' } | Select-Object -ExpandProperty DisplayName
第一個GET-ItemProperty返回正確的結果,第二個返回什麼。
我試圖用一個腳本塊:
[ScriptBlock]$whereClause = [ScriptBlock]::Create("$_.DisplayName -like '*$productName*'")
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | where $whereClause | Select-Object -ExpandProperty DisplayName
但這個錯誤「術語「.DisplayName未被識別爲cmdlet的名字......」
我試着各種其他變化,但我似乎無法得到它的工作,我不知道我錯過了什麼。我希望能夠在Where-Object cmdlet中使用參數變量。我該怎麼做呢?
IMO更常見的措辭是'可變擴展' – LotPings
謝謝。 Powershell傷了我的頭。 – bornfromanegg