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