You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Get-WmiObject输出的特定行存储到变量并在msiexec命令中复用

解决方法:提取WMI对象属性到变量并复用

没问题,我来帮你搞定这个需求!核心要点是不要用Format-Table来处理对象数据——它是用来给人看的格式化输出,不是用来提取属性值的。我们直接操作原始的WMI对象就行:

步骤1:提取IdentifyingNumber到变量$var1

用Select-Object -ExpandProperty直接取出属性值,命令如下:

# 获取匹配的产品对象,提取IdentifyingNumber(如果有多个结果,取排序后的第一个)
$var1 = Get-WmiObject Win32_Product -Filter "Name like '%team%'" | 
        Sort-Object -Property Name | 
        Select-Object -First 1 -ExpandProperty IdentifyingNumber

小提示:如果你的PowerShell版本较新,推荐用Get-CimInstance替代Get-WmiObject(后者已被弃用),命令几乎一样:

$var1 = Get-CimInstance Win32_Product -Filter "Name like '%team%'" | 
        Sort-Object -Property Name | 
        Select-Object -First 1 -ExpandProperty IdentifyingNumber

执行后可以用Write-Host $var1验证变量值,应该会输出你需要的{ABC12345-1234-1234-8936-123456789ABC}。

步骤2:复用变量到msiexec命令

直接把$var1代入你的卸载命令即可:

Start-Process "msiexec.exe" -ArgumentList "/x $var1 /quiet /n" -Wait

这样就能自动用提取到的GUID执行静默卸载啦!

内容的提问来源于stack exchange,提问作者user12493723

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 10:07:36