PowerShell | Comparer la liste de logiciels

Rédigé par O. Clotaire Aucun commentaire
Classé dans : Windows, PowerShell Mots clés : PowerShell, Windows
Vous voulez comparer les programmes installés deux ordinateurs (identiques) grâce à un fichier qui vous servira de référence.
Vous allez créer une liste référence de ces programmes avec PowerShell afin de savoir ce qu'il vous reste à installer sur le deuxième ordinateur où si vous avez un logiciel en plus. 
Windows 7, 8, 10.

Commencez par ouvrir PowerShell :
- Cliquez sur le menu Démarrer
- Tapez powershell
- Sélectionnez PowerShell

Copiez et collez le code ci-dessous :
Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Format-Table –AutoSize > C:\Temp\ExportLogiciels.txt
La liste sera exporté vers l'emplacement C:\Temp\ExportLogiciels.txt.

Copier /coller le fichier ExportLogiciels.txt sur le deuxième ordinateur, dans C:\Temp.

Toujours sur le deuxième PC, ouvrez PowerShell et collez-y cette commande :
Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Format-Table –AutoSize > C:\Temp\ExportLogicielsPC2.txt
Maintenant, vous allez comparez les deux fichiers avec cette commande :
Compare-Object -ReferenceObject (Get-Content C:\Temp\ExportLogiciels.txt) -DifferenceObject (Get-Content C:\Temp\ExportLogicielsPC2.txt) > C:\Temp\Compare.txt
Les symboles comparatifs :
=> :Le logiciel est installé sur le deuxième ordinateur mais pas sur le premier.
<= :Le logiciel est installé sur le premier ordinateur mais pas sur le deuxième.


Export des correctifs (Hotfix) :
Get-HotFix -computername NomDeVotrePC | Select HotfixID,Description,InstalledOn | Sort InstalledOnfunction | Export-Csv C:\Temp\ExportHotfix.csv

Remarques : 

Un petit script afin d'automatiser la comparaison de fichiers. 
Il faudra simplement remplacer par vos valeurs les variables en rouge.

$ReferenceFile = "C:\Temp\fichier1.txt"
$DifferenceFile = "C:\Temp\fichier2.txt"
$CompareResult = "C:\Temp\CompareResult.txt"
Compare-Object -ReferenceObject (Get-Content $ReferenceFile) -DifferenceObject (Get-Content $DifferenceFile) > $CompareResult

A PROPOS

  • Grace à mon expérience dans les Systèmes d'Information, j'ai le privilège de partager mon expérience en les centralisant sous la forme d’une base de connaissance.
  • Parfois certaines de nos questions ne trouvent pas toujours de réponse. Le domaine de l’informatique évolue rapidement, il est alors important de pouvoir profiter des solutions déjà expérimentés.
  • Ce site sera de plus en plus accessible.
  • Je vous remercie d’avance pour vos éventuelles remarques constructives permettant son amélioration.

Écrire un commentaire

 Se rappeler de moi sur ce site
Quelle est le quatrième caractère du mot 5p2ainye ?

Fil RSS des commentaires de cet article

↓