我刚刚开始使用powershell,我想编写基本的shell脚本来删除Windows 10默认应用程序,如XBOX,Instagram等,这就是我的脚本的样子。
$appXPackage = "Get-AppXPackage -Name"
$appXPackage + ' Microsoft.XboxGameCallableUI' | Remove-AppxPackage
出现此错误:
Remove-AppxPackage : Deployment failed with HRESULT: 0x80073CFA, Removal failed. Please contact your software vendor. (
Exception from HRESULT: 0x80073CFA)
Package Manager aborted the Remove operation because an invalid argument was passed: Get-AppXPackage -Name Microsoft.Xb
oxGameCallableUI.
NOTE: For additional information, look for [ActivityId] eb445625-b0a9-0002-d590-44eba9b0d301 in the Event Log or use th
e command line Get-AppxLog -ActivityID eb445625-b0a9-0002-d590-44eba9b0d301
At C:\Users\Viktor\Desktop\Remove Windows 10 Apps.ps1:11 char:50
+ $appXPackage + ' Microsoft.XboxGameCallableUI' | Remove-AppxPackage
+ ~~~~~~~~~~~~~~~~~~
+ CategoryInfo : WriteError: (Get-AppXPackage...xGameCallableUI:String) [Remove-AppxPackage], IOException
+ FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.RemoveAppxPackageCommand
修改 我怎样才能在数组中编写应用程序名称并通过它进行循环
答案 0 :(得分:2)
跳过尝试将半个语句存储在字符串中的中间步骤:
$PackageName = 'Microsoft.XboxGameCallableUI'
Get-AppxPackage -Name $PackageName | Remove-AppxPackage
答案 1 :(得分:0)
这样您就可以定义要删除的应用程序包。
$applicationPackages = "Application.Name","Application2.Name","Application3.Name"
Foreach($application in $applicationPackages){
Remove-AppxPackage -Name $application
}
如果您知道可以执行此操作的部分名称来创建数组
,则更进一步$applicationPackages = Get-AppxPackage | where-object {$_.Name -match "someapplication*|someotherApplication*"}
答案 2 :(得分:-1)
您正在尝试创建Windows 10映像。您正在运行sysprep,而您正在使用默认程序遇到这个问题? ...微软。
这就是你要问的问题。
$list_of_packages = @('Microsoft.XboxGameCallableUI', '...', '...')
foreach ($package_name in $list_of_packages) {
Remove-AppXPackage -Name $package_name
}
但是,让我们跳过去。如果你还没有......你可能会尝试以下方法。
祝你好运。