2017-08-15 111 views
0

我試圖通過在PowerShell腳本中運行以下命令來剷除Windows 10教育。我可以讓腳本刪除已登錄用戶的應用程序,但只要有新的用戶登錄,應用程序就會重新出現。需要幫助通過powershell刪除默認的Windows 10應用程序

這裏是我的腳本:

Get-AppxPackage -AllUsers | where-object {$_.name –like 「*3DBuilder*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*windowsalarms*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*windowscamera*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*windowscommunicationsapps*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*officehub*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*getstarted*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*windowsmap*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*solitairecollection*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*bingfinance*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*bingnews*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*zunevideo*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*people*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*windowsphone*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*bingsports*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*windowsstore*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*soundrecorder*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*bingweather*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*xboxapp*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*Appconnector*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*MinecraftUWP*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*Messaging*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*WindowsFeedbackHub*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*Getstarted*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*GetHelp*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*ContactSupport*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*Wallet*」} | Remove-AppxPackage 
Get-AppxPackage -AllUsers | where-object {$_.name –like 「*OneConnect*」} | Remove-AppxPackage 

任何建議,將不勝感激。

回答

3

我不是100%肯定,但我認爲你需要使用 - 聯機參數

$Apps = Get-AppxProvisionedPackage -Online 
$Apps | Where-Object {$_.DisplayName -like "*windowscommun*"} | Remove-AppxProvisionedPackage -Online 
+0

謝謝奧拉夫我也會嘗試這個版本。 –

+1

由於Get-AppxProvisionedPackage和Get-AppxPackage的區別,這個答案是正確的。 AppxPackage獲取已安裝的包,AppxProvisionedPackage獲取存儲庫中的包。如果在任何人登錄之前它是一個新鮮的圖像,那麼您可以使用AppxProvisionedPackage,但如果用戶已登錄,則需要使用這兩個圖標。 – BenH

+0

這工作。感謝Olaf :) –

-1

您已將-AllUsers開關設置爲Get-AppxPackage,但不是Remove-AppxPackage。如果您將其添加到每行的末尾,您應該會獲得預期的行爲。請注意,我不認爲你需要第一AllUsers的切換,但不能傷害保持在(不包括它可能會做出的命令需要更長的時間才能完成。)

Get-AppxPackage -AllUsers | where-object {$_.name –like 「*3DBuilder*」} | Remove-AppxPackage -AllUsers 
+0

沒有與刪除,AppxPackage -AllUsers放慢參數 –

+0

感謝您的反饋,我會盡量補充說,到現在我的腳本:) –

+0

@ OlafReitz它沒有在Windows 8中,但它肯定在Windows 10中:https://technet.microsoft.com/en-us/itpro/powershell/windows/appx/remove-appxpackage – Windos

相關問題