Apps are clearly a focus on Windows 8, not only because the operating system boots into the "apps-interface" on startup by default, but because most of the marketing for the operating system puts it in focus as well. That's however just one side of Windows 8, and I'm not entirely sure if concentrating all efforts on those features is the smartest move by Microsoft.
Anyway, if you are not using the apps at all, or want to remove apps from user profiles so that they cannot launch them, then you may have discovered that it is not really a straightforward operation.
Things get a bit easier in Windows 8.1 with its batch uninstallation feature - right-click multiple apps and select uninstall in the end - but it is still far from what I would consider comfortable.
The Windows PowerShell may look intimidating, or like just another shell environment or command line to most users. It is actually very powerful, and one of the things that you can use it for is to remove some or all apps installed on a Windows 8 system.
PowerShell and Apps
You do need to start the PowerShell before you can get started. Do the following to do just that:
- Press the Windows-key and enter PowerShell using the keyboard.
- Right-click the PowerShell result and select to "run as administrator" from the options.
On to the commands:
Get retrieves app-related information from users on the local PC or a remote domain.
Get-AppxPackage -User [Username] lists all apps installed by the user [username]. [username] can be a domain\user, an email address, a user_name, or a SID-string.
Get-AppxPackage -AllUsers lists all apps installed by users on the system
Get-AppxPackage -Name [name] returns all apps that match [name]. You can use wildcards (*) in the command.
Get-AppxPackage -Publisher [publisher name] returns all apps that are installed by the selected publisher(s). Wildcards are again permitted.
Note that it is possible to combine queries.
Example Get queries:
- Get-AppxPackage -Publisher *Microsoft* returns all apps published by Microsoft, and any other publisher that uses Microsoft in its name (likely none).
- Get-AppxPackage -user Martin returns all apps installed under the user account Martin.
- Get-AppxPackage -name *Halo* returns all apps that have Halo in their name.
- Get-AppxPackage -name *Facebook* -User domain/user1 returns all installed apps with Facebook in their name from user1 on the remote computer domain.
Remove works very similar to Get, but it offers additional parameters.
Remove-AppxPackage [package name] removes [package name] from the account of the currently signed in user.
Remove-AppxPackage [package name] -Confirm does the same as above, but displays a confirmation prompt before the command is executed.
Remove-AppxPackage [package name] -WhatIf displays what would happen if you would run the command.
Example Remove queries:
- Remove-AppxPackage 31098nishrotech.readiy_220.127.116.11_neutral___ap1yy96n767gr Removes the selected package from the current user account
How to remove all Metro apps from all users
Get-AppxPackage -AllUsers | Remove-AppxPackage
Microsoft has published a script that removes all Windows Store apps in Windows 8 as well. You can download it from this Technet page.
Additional information about App installation cmdlets are available on Technet as well.