Ich habe eine Hash-Tabelle hier und ich habe es schließlich in eine Excel-Tabelle ausgeben, aber das Problem scheint die Art zu sein, wie das System die Hash-Tabelle standardmäßig sortiert. Ich möchte, dass es die Maschinen in der gleichen Reihenfolge zurückgibt, in der sie eingegeben wurden. So wie es momentan funktioniert, erscheint eine Box und Sie fügen alle Ihre Maschinennamen ein, so dass sie alle im Speicher vor der foreach
Schleife sind. Ich habe dies zuvor nach der längsten Betriebszeit sortiert, aber jetzt muss es genauso sein, wie sie eingegeben wurden. Mein erster Gedanke ist, eine weitere Hash-Tabelle zu erstellen und sie in der gleichen Reihenfolge wie die Variable $machineList
zu erfassen, aber das könnte mich sogar in der gleichen Position belassen. Ich habe versucht zu suchen, aber ich konnte keine Informationen über die Standardmethode finden, die Hash-Tabellen sortieren.Hash-Tabelle - Sortieren in der Reihenfolge, wie sie eingegeben werden
Irgendwelche Ideen?
$machineUptime = @{}
foreach($machine in $machineList){
if(Test-Connection $machine -Count 1 -Quiet){
try{
$logonUser = #gets the logged on user
$systemUptime = #gets the wmi property for uptime
if($logonUser -eq $null){
$logonUser = "No Users Logged on"
}
$machineUptime[$machine] = "$systemUptime - $logonUser"
}
catch{
Write-Error $_
$machineUptime[$machine] = "Error retrieving uptime"
}
}
else{
$machineUptime[$machine] = "Offline"
}
}
dies wie 5 Minuten nach Gefunden, natürlich. Vielen Dank! – nkasco
[bestellt] ist PowerShell 3.0+ – Matt
@Matt In der Tat ist es. –