希望你能帮我解决我的问题 . 我尝试将包列表导入$ list变量,并将DP服务器列表导入名为$ DP的变量 . 我使用foreach和write-host并确认变量中的所有项都显示正常,但是当我使用get-wmi对象中的变量作为参数来过滤$ i.packageid时,它是空的/ null . 请告知如何解决此问题 .
示例代码
$list=import-csv -Path 'C:\Users\Administrator\desktop\SCCM\packagelist.csv'
$DP="SCCMDP1","SCCMDP2"
foreach ($i in $list)
{
write-host "Item is $($i)" # showing ok
write-host "package is $($i.package)" # showing ok
write-host "packageid is $($i.packageid)" # showing ok
get-wmiobject -namespace root\sms\site_v01 -class sms_distributiondpstatus -Filter {packageid like "$i.packageid"}|select name
1 回答
您在参数中调用变量的方式不同于
Write-Host
调用 . 如果字符串$()
中没有子表达式,则无法访问对象属性 .如果您不打算使用通配符,则不需要使用
LIKE
WQL比较 .