Blog
Hier poste ich dinge zu Themen die mich beschäftigten.
Suchen
2023-04-14
Powershell Script zum erfassen der Netzwerkgeräte
# Parametereingabe
param (
[string]$LogFile = “hardware_inventory.csv”
)
# Funktion zum Sammeln von Hardwareinformationen
function Get-HardwareInfo {
param (
[string]$ComputerName
)
try {
$system = Get-WmiObject -Class Win32_ComputerSystem -ComputerName $ComputerName
$bios = Get-WmiObject -Class Win32_BIOS -ComputerName $ComputerName
$network = Get-WmiObject -Class Win32_NetworkAdapterConfiguration -ComputerName $ComputerName | Where-Object { $_.IPAddress -ne $null -and $_.MACAddress -ne $null }
return [pscustomobject]@{
Hersteller = $system.Manufacturer
Modell = $system.Model
Seriennummer = $bios.SerialNumber
MACAdresse = $network.MACAddress
DNSName = $network.DNSHostName
IPAdresse = $network.IPAddress -join ‘, ‘
ComputerName = $ComputerName
}
} catch {
Write-Warning “Fehler beim Abrufen von Informationen für $ComputerName”
}
}
# Netzwerk-Scan
$networkDevices = Get-WmiObject -Query “SELECT * FROM Win32_PingStatus WHERE StatusCode=0” | Select-Object -ExpandProperty Address
# Sammeln von Hardwareinformationen und Speichern in CSV-Datei
$hardwareInfo = foreach ($device in $networkDevices) {
Get-HardwareInfo -ComputerName $device
}
$hardwareInfo | Export-Csv -Path $LogFile -NoTypeInformation -Force -Encoding UTF8
Write-Host “Hardwareinformationen wurden in $LogFile gespeichert.”
Admin - 14:15:30 @ Projekte, Powershell-Skripte | Kommentar hinzufügen
Kommentar hinzufügen
Die Felder Name und Kommentar sind Pflichtfelder.