Powershell Foreach Schleife Daten in Variablen speichern
Moin zusammen,
ich habe eine Frage die für einige vielleicht oder hoffentlich einfach zu beantworten ist.
Es geht um Powershell. Ich habe eine Foreach Schleife die Daten von meinen Monitoren abfragt. (Marke, Modell, Seriennummer,).
Da ich 2 habe macht eine Foreach Schleife meines Wissens nach ja Sinn. Nun möchte ich gerne für jeden Monitor den ausgelesenen Wert in eine
Variable speichern.
Beispiel:
Monitor 1 :
$Marke1 = Asus
$Serial = 123456...
$Modell = AS24
Monitor 2:
$Marke 2 = Fujitsu
$Serial2 = 354121...
$Modell = BWJ24
Weiß jemand wie das umsetzbar ist? Mein bisheriger Code befindet sich unten.
Vielen Dank schon mal. :D
ich habe eine Frage die für einige vielleicht oder hoffentlich einfach zu beantworten ist.
Es geht um Powershell. Ich habe eine Foreach Schleife die Daten von meinen Monitoren abfragt. (Marke, Modell, Seriennummer,).
Da ich 2 habe macht eine Foreach Schleife meines Wissens nach ja Sinn. Nun möchte ich gerne für jeden Monitor den ausgelesenen Wert in eine
Variable speichern.
Beispiel:
Monitor 1 :
$Marke1 = Asus
$Serial = 123456...
$Modell = AS24
Monitor 2:
$Marke 2 = Fujitsu
$Serial2 = 354121...
$Modell = BWJ24
Weiß jemand wie das umsetzbar ist? Mein bisheriger Code befindet sich unten.
Vielen Dank schon mal. :D
$Computername = Read-Host "Wie ist der Computername?"
$All = Get-WmiObject -Namespace root\wmi -Class wmiMonitorID -ComputerName $Computername
foreach ($monitor in $All)
{
$serial = $null
$product = $null
$manufacturer = $null
$monitor.SerialNumberID | foreach {$serial += [char]$_}
$serial
$monitor.ProductCodeID | foreach {$product += [char]$_}
$product
$monitor.ManufacturerName | foreach {$manufacturer += [char]$_}
$manufacturer
}
Please also mark the comments that contributed to the solution of the article
Content-Key: 3267699295
Url: https://administrator.de/contentid/3267699295
Printed on: May 18, 2024 at 10:05 o'clock
2 Comments
Latest comment
Servus
Die zusätzlichen Variablen sind überflüssig die hast du ja schon in einem Array zugreifbar, und eine Foreach-Schleife ist hier ehrlich gesagt ebenfalls überflüssig da du fast nichts an den Werten änderst außer sie in Klartext umzuwandeln :
Grüße Uwe
Die zusätzlichen Variablen sind überflüssig die hast du ja schon in einem Array zugreifbar, und eine Foreach-Schleife ist hier ehrlich gesagt ebenfalls überflüssig da du fast nichts an den Werten änderst außer sie in Klartext umzuwandeln :
$Computername = Read-Host "Wie ist der Computername?"
$monitors = Get-WmiObject -Namespace root\wmi -Class wmiMonitorID -ComputerName $Computername | select Manufacturer,@{n='SerialNumberId';e={[System.Text.Encoding]::ASCII.GetString($_.SerialNumberId)}},@{n='ProductCodeId';e={[System.Text.Encoding]::ASCII.GetString($_.ProductCodeId)}}
# Eigenschaften abfragen ...
# Alle Eigenschaften von Monitor 1
$monitors
# Alle Eigenschaften von Monitor 2
$monitors[1]
# Eigenschaft Manufacturer von Monitor 1
$monitors.Manufacturer
# usw.