Menu Fermer

PowerShell : installer, désinstaller, lister les applications

PowerShell est un shell puissant disponible dans Windows 11, Windows 10, Windows 8 et Windows 7.
Il fournit de nombreux Cmdlet comme Get-AppXPackage, Install-Package, Remove-AppxPackage, etc pour gérer les applications modernes (Applications UWMP) installées.
Ces derniers sont liés au module Microsoft.PowerShell.OneGet.Cmdlets.
Ces logiciels sont assimilés à des paquets même si PowerShell n’agit pas réellement en tant que gestionnaire de paquets.

Dans ce tutoriel, vous allez apprendre à utiliser cette commande pour lister, installer et désinstaller une application avec PowerShell.

PowerShell : installer, désinstaller, lister les applications

La liste des cmdlet pour gérer les applications en PowerShell

Cmdlet / CommandeDescription
Find-PackageRechercher un paquet au sein des sources de paquets disponibles
Get-PackageRenvoyer la liste des tous les paquets installés
Get-PackageProvider Renvoyer la liste des fournisseurs de paquets (dépôts) utilisés sur la machine
Get-PackageSourceRenvoyer la liste des sources disponibles pour récupérer les paquets
Install-PackageInstaller un paquet sur la machine
Register-PackageSourceAjouter une source dans un provider
Save-PackageSauvegarder un paquet en local sans l’installer
Set-PackageSourceDéfinir un provider comme source pour les paquets
Uninstall-PackageDésinstaller un paquet
Unregister-PackageSourceRetirer l’utilisation un provider des sources pour les paquets
La liste des cmdlet pour gérer les applications en PowerShell
Rappellons qu’il existe les applications de bureaux et les applications modernes (ou applications UWP).
Ces derniers sont fournis sous la forme de paquets.
Plus d’informations : Que sont les applications Win32 et Applications UWP et les différences

Comment lister les applications installées en PowerShell avec Get-AppXPackage

Pour lister les applications installées (et donc les paquets), utilisez la commande Get-AppxPackage :

Get-AppxPackage

Le résultat s’affiche sous forme de tableau, ce qui n’est pas forcément pratique si on veut une simple liste.
Pour obtenir une liste des applications installées avec les noms des paquets et les noms complets, utilisez la syntaxe suivante :

Get-AppxPackage | Select Name, PackageFullName
Lister les applications installées en PowerShell

Vous pouvez spécifier un mot clé pour rechercher des paquets par un nom ou description.
Par exemple pour trouver les paquets avec le mot Edge :

Get-AppxPackage *Edge*

Comment désinstaller une application installée en PowerShell

Désinstaller une application de bureau en PowerShell

PowerShell ne possède pas de cmdlet pour désinstaller une application de bureau.
Toutefois, il existe des méthodes pour y arriver.

Sur Windows 11 ou Windows 10, le plus simple est d’utiliser la commande winget.
Par exemple, pour supprimer CoreTemp en ligne de commandes :

winget uninstall CoreTemp
Comment supprimer une application installée en PowerShell

Pour désinstaller une application en mode silencieux, ajoutez le paramètre –disable-interactivity :

winget uninstall --disable-interactivity CoreTemp

Et bien sûr, vous pouvez spécifier plusieurs nom d’application comme ceci :

winget uninstall CoreTemp notepad++

Supprimer un paquet avec Remove-AppxPackage

Pour supprimer une application moderne (UWP Application) en PowerShell, vous pouvez utiliser la commande Remove-AppxPackage.
Il suffit simplement de donner le nom de paquet.

Par exemple, pour supprimer l’application Contact :

Remove-AppxPackage -Package 'Microsoft.People_10.2202.31.0_x64__8wekyb3d8bbwe'

Le paramètre -Package est facultatif. Par contre, vous devez bien spécifier le nom complet du paquet, sinon cela ne fonctionnera pas et vous obtiendrez un échec du déploiement avec HRESULT: 0x80073CFA.
Ainsi, on peut aussi utiliser la commande de cette manière :

Remove-AppxPackage -Package 'Microsoft.People_10.2202.31.0_x64__8wekyb3d8bbwe'
Désinstaller applications préinstalléss en PowerShell

Utilisez le paramètre -allusers pour supprimer le paquet d’applications pour tous les comptes d’utilisateurs de l’ordinateur. Pour utiliser ce paramètre, vous devez exécuter la commande avec des droits d’administrateur.

Remove-AppxPackage -allusers -Package 'Microsoft.WindowsCamera_2022.2206.2.0_x64__8wekyb3d8bbwe'

Une autre syntaxe que vous pouvez utiliser est la suivante où on pipe le nom du paquet avec Get-AppxPackage :

Get-AppxPackage Microsoft.WindowsCalculator | Remove-AppxPackage

Il est aussi possible d’utiliser cette commande PowerShe

Get-AppxPackage | Out-GridView -Passthru | Remove-AppXPackage
Désinstaller applications préinstalleéss en PowerShell

Enfin pour supprimer l’intégralité des applications d’un utilisateur, utilisez la commande suivante :

Get-AppxPackage | Remove-AppxPackage

Comment Installer un logiciel en PowerShell

Tout d’abord, vous devez ajouter des sources à l’aide de la commande Register-PackageSource.

Pour ajouter la source MyNuGet :

Register-PackageSource -Name MyNuGet -Location https://www.nuget.org/api/v2 -ProviderName NuGet

Pour ajouter la source Chocolatey :

Register-PackageSource -Name chocolatey -ProviderName Chocolatey -Location http://chocolatey.org/api/v2/
Comment Installer un logiciel en PowerShell

Utilisez Get-PackageSource pour voir toutes les sources de package disponibles.

Comment Installer un logiciel en PowerShell

Ensuite utilisez la commande Find-Package pour trouver le nom du paquet à partir d’un mot clé.
Vous devez spécifier la source comme ceci :

Find-Package -Name *<mot clé>* -Source <Source>

Par exemple pour trouver la paquet CoreTemp dans le dépôt Chocolatey :

Find-Package -Name *CoreTemp* -Source Chocolatey

Enfin pour installer une application, utilisez la commande suivante :

Install-Package -Name CoreTemp -ProviderName Chocolatey
Comment Installer un logiciel en PowerShell

Les alternatives pour gérer les paquets en ligne de commandes sur Windows

Il n’est pas forcément facile de s’y retrouver avec les différentes commandes pour gérer les applications installées dans Windows.
Les gestionnaires de paquets sont là pour faciliter les choses.

Voici quelques gestionnaires de paquets pour gérer des applications en ligne de commandes dans Windows :

Liens