Liste aller Codebeispiele
Autor: Dr. Holger Schwichtenberg
Beschreibung
Erstellung einer Datenbank mit der auf mehreren Systemen verfügbaren Software.
Eingabedatei: Das Skript liest aus einer Datei mit Namen Computernamen.txt die Namen bzw. IP-Adressen der abzufragenden Computer aus. Jede Zeile in der Eingabedatei ist ein Computername bzw. eine IP-Adresse.
Ausgabedatei: Eine CSV-Liste mit den Daten der installierten Software
Besonderheiten: Filterung nach Hersteller möglich
Programmcodebeispiele Windows PowerShell-Pipeline
PowerShell-Lösung als Einzeiler mit Pipelines:
Get-Content "computernamen.txt" | foreach { get-wmiobject win32_product -computername $_ } | where { $_.vendor -notlike "*Microsoft*" } | export-csv "Softwareinventar.csv" –notypeinformation
Programmcodebeispiele Windows PowerShell-Skript
PowerShell-Lösung als PowerShell-Skript:
########################################
# Das PowerShell-Script inventarisiert die installierte Software
# eines Herstellers auf n Computersystemen, wobei die Namen der zu
# untersuchenden Computer in einer Textdatei stehen
# (C) Dr. Holger Schwichtenberg
########################################
$Hersteller = "*Microsoft*"
# Import der Computernamen
$Computernamen = Get-Content "computernamen.txt"
# Auslesen der installierten MSI-Pakete auf allen Computern
$Software = foreach { get-wmiobject win32_product -computername $_ } | ^
where { $_.vendor -like $Hersteller } |
# Export in CSV
$Software | export-csv "Softwareinventar.csv" -notypeinformation
Hinweise
Ausgaben werden in den Beispielen durch Hilfsroutinen wie out() und
PrintOut() erzeugt. Diese sind hier nicht angegeben, da deren Implementierung
von der jeweiligen Umgebung abhängt. Für Konsolenanwendungen können hier z.B.
Console.WriteLine() einsetzen.
Querverweise
Definition '.NET Framework Class Library'
Verfügbarkeit der Klasse 'System.Management'
Übersicht über den FCL-Namensraum 'System.Management'
Portal dotnetframework.de
|