如何用原生PowerShell获取指定软件的安装路径
获取特定软件的安装路径(PowerShell原生实现)
基于你现有的注册表查询脚本,只需要添加过滤逻辑,就能提取目标软件的安装路径并存储到变量里,全程用PowerShell原生命令,无需第三方模块。
完整示例脚本
# 定义要查找的软件名称关键词(可按需修改,比如换成"Microsoft Office") $targetSoftware = "Microsoft Visual Studio" # 读取32位和64位系统的软件注册表信息,忽略权限报错 $allInstalledApps = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* -ErrorAction SilentlyContinue $allInstalledApps += Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* -ErrorAction SilentlyContinue # 过滤出目标软件,提取非空的安装路径并去重 $targetInstallPath = $allInstalledApps | Where-Object { $_.DisplayName -like "*$targetSoftware*" -and $_.InstallLocation -ne $null } | Select-Object -ExpandProperty InstallLocation -Unique # 验证结果 if ($targetInstallPath) { Write-Host "找到目标软件的安装路径:" $targetInstallPath } else { Write-Host "未检测到目标软件安装" }
关键说明
- 用
-like "*$targetSoftware*"做模糊匹配:不管软件名称带不带版本号(比如"Microsoft Visual Studio 2022"),都能匹配到 -ErrorAction SilentlyContinue:避免读取部分权限受限的注册表项时抛出错误,保证脚本流畅运行-Unique:防止同一软件存在多个注册表条目时,返回重复的安装路径
自定义修改
如果要查找其他软件,只需要修改$targetSoftware的值即可,比如:
# 查找Microsoft Office $targetSoftware = "Microsoft Office"
内容的提问来源于stack exchange,提问作者OLLI_S
相关产品推荐
相关产品推荐

