xola 10 Geschrieben 20. Juli 2011 Melden Geschrieben 20. Juli 2011 Hallo, ich möchte den freien Festplattenplatz in eine Variable speichern. Diese wird dann zusammen mit anderen Variablen in eine Datei geschrieben. Wie ich den Wert erhalte, weiß ich schon: Get-WmiObject Win32_logicaldisk | where {$_.DeviceId -eq "C:"} | Format-Table Freespace -auto Das Ergebnis ist eine Tabelle/Liste (wie auch immer man das nennt): Freespace --------- 1426604032 Das Ergebnis sind Bytes, die ich in Gigabytes umwandeln muss. Dazu muss natürlich dieser Wert in eine Variable gespeichert werden. Und genau das ist mein Problem. Wie bekomme ich diesen Wert aus der Tabelle/Liste in eine Variable extrahiert? Es funktioniert weder mit foreach (der läuft immer 5mal durch, immer mit dem Ergebnis 0, warum auch immer) noch mit ...[0]. Freundliche Grüße
Dukel 468 Geschrieben 20. Juli 2011 Melden Geschrieben 20. Juli 2011 $freespace = Get-WmiObject Win32_logicaldisk | where {$_.DeviceId -eq "C:"}
blub 115 Geschrieben 20. Juli 2011 Melden Geschrieben 20. Juli 2011 Hallo, Nicht so kompliziert denken :-) $a=Get-WmiObject Win32_logicaldisk | where {$_.DeviceId -eq "C:"} $freespace=$a.freespace #$a | gm #"Freier Platz: {0:0.00} GB" -f $($freespace/1Gb) Die möglichen Properties bekommst du über get-member bzw. gm oder aus der MSDN http://msdn.microsoft.com/en-us/library/aa394173%28v=vs.85%29.aspx blub
Dukel 468 Geschrieben 20. Juli 2011 Melden Geschrieben 20. Juli 2011 Hallo,Nicht so kompliziert denken :-) $a=Get-WmiObject Win32_logicaldisk | where {$_.DeviceId -eq "C:"} $freespace=$a.freespace #$a | gm #"Freier Platz {0:0.00} GB" -f $($freespace/1Gb) blub Kann man noch mehr vereinfachen: $free = (Get-WmiObject Win32_logicaldisk | where {$_.DeviceId -eq "C:"}).freespace ... Hatte ich bei meinem vergessen.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden