结合多个powershell命令

时间:2017-09-21 01:57:35

标签: powershell windows-10

我正在尝试删除Windows 10附带的一些多余的应用程序,目前使用以下命令,例如,如果我想卸下3D Builder,我使用:

Get-AppxPackage *3dbuilder* | Remove-AppxPackage

同样,如果我需要删除其他应用程序,我需要继续重用上面的命令来替换应用程序名称。有没有办法用一个命令删除多个应用程序?我不想写一个powershell脚本,因为我需要设置执行策略。

另一种选择是使用this,如下所示,但是,我希望看到我删除的内容。

Get-AppxPackage -AllUsers | Remove-AppxPackage

1 个答案:

答案 0 :(得分:1)

根据您所描述的内容,我将使用正则表达式匹配包名称:

首先,运行此选项以验证您要删除的内容:

Get-AppXPackage | Where-Object { $_.Name -imatch "(3dbuilder|package2|package3)$" }  | Remove-AppxPackage -WhatIf

然后,删除-WhatIf以实际运行Remove-AppXPackage。

我在上面展示的正则表达式基本上是一个匹配的结尾。它查找名称以“3dbuilder”,“package2”或“package3”结尾的包。您可以使用“管道”符号在列表中添加或删除包名称。这是因为看起来在您可能不想输入的包名称前面有一些随机字符。

正则表达式可以贪婪地匹配,所以一定要先使用-WhatIf来验证你是否只删除你想要的东西!