Blog

Hier poste ich dinge zu Themen die mich beschäftigten.

Neueste 5 Einträge

  • PHP: sende Mail
  • Powershell: gruppename like finden und aktivierte user zaehlen
  • HW und SW auslesen und exportieren
  • Angeschlossene Monitore auslesen
  • bash: deepL Pro Paket MAC OS

2023-04-15

Powershell - suche nach Computern im Netzwerk mit Adobe Reader und schreibe die ergebnisse in ein logfile

Um ein PowerShell-Skript zu erstellen, das im Netzwerk nach Computern sucht, auf denen eine bestimmte Software (in diesem Beispiel Adobe Acrobat Reader) installiert ist, und die Ergebnisse in eine CSV-Datei schreibt, können Sie das folgende Skript verwenden. Beachten Sie, dass für dieses Skript administrative Berechtigungen erforderlich sind, um Remote-WMI-Abfragen auf den Zielcomputern auszuführen.

# Variablen
$SoftwareName = “Adobe Acrobat Reader”
$OutputFile = “C:InstalledSoftwareReport.csv”

# CSV-Header erstellen
$CSVHeader = “ComputerName,LoggedInUser,Manufacturer,Model,LastLogonDate”
Add-Content -Path $OutputFile -Value $CSVHeader

# Alle Computer im Active Directory abrufen
$Computers = Get-ADComputer -Filter * -Properties *

foreach ($Computer in $Computers) {
    $ComputerName = $Computer.Name
    try {
        # WMI-Abfrage für installierte Software
        $InstalledSoftware = Get-WmiObject -Class Win32_Product -ComputerName $ComputerName | Where-Object { $_.Name -like “*$SoftwareName*” }
        if ($InstalledSoftware) {
            # WMI-Abfrage für Computerinformationen und angemeldeten Benutzer
            $ComputerSystem = Get-WmiObject -Class Win32_ComputerSystem -ComputerName $ComputerName
            $Manufacturer = $ComputerSystem.Manufacturer
            $Model = $ComputerSystem.Model
            $LoggedInUser = $ComputerSystem.UserName

            # Letztes Anmeldedatum abrufen
            $LastLogonDate = (Get-ADComputer $Computer -Properties LastLogonDate).LastLogonDate

            # Ergebnisse in CSV-Datei schreiben
            $CSVData = “$ComputerName,$LoggedInUser,$Manufacturer,$Model,$LastLogonDate”
            Add-Content -Path $OutputFile -Value $CSVData
        }
    } catch {
        Write-Host “Fehler bei der Verarbeitung von $ComputerName: $($_.Exception.Message)” -ForegroundColor Red
    }
}

Dieses Skript durchsucht alle Computer im Active Directory, prüft, ob die angegebene Software installiert ist, und schreibt die Ergebnisse in eine CSV-Datei. Die CSV-Datei enthält die folgenden Informationen: Computername, angemeldeter Benutzer, Hersteller, Modell und letztes Anmeldedatum.

Bitte beachten Sie, dass die Verwendung von Win32_Product in WMI-Abfragen möglicherweise langsam ist und in einigen Fällen zu unerwünschten Nebenwirkungen führen kann, wie z. B. dem erneuten Konfigurieren von Software. Eine alternative Methode besteht darin, die Registry der Remote-Computer abzufragen, um die installierte Software zu ermitteln.

Admin - 10:56:16 @ Projekte, Powershell-Skripte | Kommentar hinzufügen

Kommentar hinzufügen

Die Felder Name und Kommentar sind Pflichtfelder.

Um automatisierten Spam zu reduzieren, ist diese Funktion mit einem Captcha geschützt.

Dazu müssen Inhalte des Drittanbieters Google geladen und Cookies gespeichert werden.