【发布时间】:2019-07-11 09:59:38
【问题描述】:
我以管理员身份打开PowerShell。
我跑:
Get-Package *notepad*
PowerShell 向我展示了 Notepad++(32 位 x86)
然后我运行:
Get-Package *notepad* | Uninstall-Package -Force
而且 PowerShell 没有卸载 Notepad++
我尝试了一些程序,它们仍然全部安装。为什么?
编辑: 如您所见,@m0lochwalker PowerShell 的行为就像程序已卸载。
在您的环境中试一试,没有任何卸载。
@Ranadip Dutta:Get-WmiObject -class Win32_Product 仅适用于 32 位,如果是 64 位,则不会返回 Notepad++;基本上它根本不返回任何 64 位:
我需要更全面的东西,可以同时使用 32 位和 64 位
【问题讨论】:
-
使用类似 $program = Get-WmiObject -class Win32_Product | ? {$_.Name -eq “你的程序”} ...然后 $program.uninstall()
-
您遇到的错误是什么?还是直接将控制权交还给 shell 没有任何东西?
-
我认为这是卸载包的错误/功能。如果提供程序名称是 Programs,则 cmdlet 不会将其卸载。这意味着您最初没有使用包管理器来安装程序
-
Francesco - 您关于 Win32 _Product 类的 cmets 不正确。为什么不在你的环境中尝试我的命令。
-
@m0lochwalker:我试过你的命令,你可以从图片中看到,不工作。尝试运行
Get-WmiObject -class Win32_Product | select Name,你会发现你的很多程序都不见了
标签: powershell nuget-package uninstallation