我正在编写一个脚本来遍历我们的 Windows 机器群,搜索几个应用程序,如果找到就将其卸载。
为了实现这一点,我使用了两个命令
Get-Package
Uninstall-Package
我远程执行此操作的方式是使用下面的
Invoke-Command -ComputerName $ComputerName -ScriptBlock {Get-Package | Where {($_.Name -Like "Wazuh*") -or ($_.Name -like "Invinsec*")} | Uninstall-Package}
虽然这在 foreach 循环中运行,但对于它运行的每台机器,只要它找到一个包,它就会提示我以下消息
Would you like PackageManagement to automatically download and install 'nuget' now?
我不明白为什么当我试图卸载一个包时它要求我安装 nuget。
有什么方法可以抑制此提示?我找不到与 Uninstall-Package 相关的此消息的任何参考,因此无法确定如何摆脱它。
答案1
我设法通过指定 msi 作为 ProviderName 来抑制警告
Uninstall-Package -ProviderName msi -Name $_.Name