PowerShell快速高效地获取安装的软件列表

我想之前分享过如何使用WMI查询的方式获取安装的软件列表:

1
Get-WmiObject win32_product

小弟以前只知道WMI查询慢,很慢,从来没有体会过它会慢到让人抓狂,近乎崩溃。一个同事在他的机器上运行后,运行了两个小时,仍然没有结束,也没有一行结果返回。

这使我不得不投入到注册表的怀抱了。要扫描注册表,PowerShell表示没有任何压力。但是唯一需要我们小心的就是这里可能会有三个路径:

  1. ‘HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall’
  2. ‘HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall’
  3. ‘HKLM:SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall’

第一个表示的是机器级别的软件。

第二个表示仅限当前用户安装的软件(ClickOne程序默认可以从这个路径下查询)。

第三个和第一个类似,只是只可能出现在64位操作系统上。

具体的调用函数可以参考:

Get-InstalledSoftwares.ps1

也可以直接在控制台调用:

1
2
Invoke-Expression ( new-object System.Net.WebClient).DownloadString( 'https://raw.githubusercontent.com/mosserlee/PSTips/master/Functions/Get-InstalledSoftwares.ps1' )
Get-InstalledSoftwares

 

本文链接:  http://www.pstips.net/get-installedsoftwares.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值