(Windows Powershell)一次删除多个 appx 包

(Windows Powershell)一次删除多个 appx 包

我正在尝试编写一个 Powershell 脚本来删除不需要的 appx 包,现在我知道删除包的基本命令是Get-AppxPackage *PackageName* | Remove-AppxPackage

我首先想到的是

Get-AppxPackage *PackageName1* | Remove-AppxPackage
Get-AppxPackage *PackageName2* | Remove-AppxPackage
Get-AppxPackage *PackageName3* | Remove-AppxPackage

每行一个包,但是,有没有办法一次删除多个 appx 包?我的意思是,您可以在脚本的同一行中设置多个包名称,然后每个包都将被删除,例如Get-AppxPackage *PackageName1,PackageName2,PackageName3* | Remove-AppxPackage(我知道那样做不行)。

答案1

像您给出的示例那样获取每个包然后将其删除是可行的,但首先创建一个包含要删除的包的部分名称的数组可能更简单。创建此数组后,您可以循环遍历它并删除每个包。以下是一个例子:

$appnames = @('paint','store','sticky')
foreach ($appname in $appnames)
{
  Get-AppxPackage | where-object {$_.name -match $appname} | Remove-AppPackage
}

相关内容