Christian 0 Geschrieben 2. März 2020 Melden Teilen Geschrieben 2. März 2020 Hallo zusammen, ich hänge gerade an einer Stelle fest und hoffe ihr könnt mir den entscheidenden Hinweis geben. Beispiel: $vmInfos = Get-VM XYZ* | Select-Object Name, PowerState $vmTools = Get-VM XYZ* | % { Get-View $_.id } | Select-Object @{ N="ToolsVersion"; E={$_.Config.Tools.ToolsVersion}}, @{ N="ToolStatus"; E={$_.Guest.ToolsVersionStatus}} Ich würde gerne die beiden Abfragen in einer HTML Datei ausgeben, nicht untereinander, sprich jeweils eine Tabelle pro Abfrage, sondern in einer Tabelle und entsprechend in einer Zeile. Name , PowerState, ToolsVersion, ToolsStatus xyz01, PoweredOn, 10.458.22, updateNeeded xyz02, PoweredOn, 10.458.22, updateNeeded xyz03, PoweredOn, 10.458.22, updateNeeded Habt ihr eine Idee wie ich das realisiert bekomme? Danke und Gruß Christian Zitieren Link zu diesem Kommentar
Dukel 455 Geschrieben 2. März 2020 Melden Teilen Geschrieben 2. März 2020 https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/convertto-html?view=powershell-7 oder das HTML selbst zusammenbauen. Zitieren Link zu diesem Kommentar
testperson 1.707 Geschrieben 2. März 2020 Melden Teilen Geschrieben 2. März 2020 Hi, dann bau doch ein "foreach" drumrum: $VMs = Get-VM | ? Name -imatch "XYZ" if($VMs){ foreach($VM in $VMs){ # Hier holst du deine Infos pro VM und schreibst Zeilenweise pro VM in deine HTLM Datei } } Gruß Jan Zitieren Link zu diesem Kommentar
Christian 0 Geschrieben 2. März 2020 Autor Melden Teilen Geschrieben 2. März 2020 (bearbeitet) Hi zusammen, ConvertTo-Html und foreach sind natürlich klar! ;) Mein Problem ist, das ich nicht weiß wie ich mehrere Abfragen in eine Ausgabe bekomme. Aktuell erzeuge ich mir folgendes Resultat: Name Zustand Datacenter Cluster VMhost Tag Hinweis VM01 PoweredOff DC-XY01 MC-PROD01 abc036.contoso.com DC-XY Datenbankserver VM02 PoweredOn DC-XY01 MC-PROD03 abc036.contoso.com DC-XY Testserver VM03 PoweredOff DC-XY02 MC-PROD02 abc036.contoso.com DC-XY Fileserver Name ToolsVersion ToolStatus VM01 0 guestToolsNotInstalled VM02 0 guestToolsNotInstalled VM03 0 guestToolsNotInstalled Ergebnis soll aber eine HTML Datei und eine Tabelle sein, wo Name Zustand Datacenter Cluster VMhost Tag Hinweis um ToolsVersion ToolStatus erweitert werden: Name Zustand Datacenter Cluster VMhost Tag Hinweis ToolsVersion ToolStatus VM01 PoweredOff DC-XY01 MC-PROD01 abc036.contoso.com DC-XY Datenbankserver 0 guestToolsNotInstalled VM02 PoweredOn DC-XY01 MC-PROD03 abc036.contoso.com DC-XY Testserver 0 guestToolsNotInstalled VM03 PoweredOff DC-XY02 MC-PROD02 abc036.contoso.com DC-XY Fileserver 0 guestToolsNotInstalled Ich könnte schummeln und hinter (in diesem Fall) beide Abfragen ein | ConvertTo-HTML -Fragment setzen. Mittels CSS und table { float: left; } würde die Optik passen, aber eben nur die Optik, weil er mir eine zweite Tabelle neben die erste legt und ich somit aus HTML Sicht keine Zeile habe. Ich hoffe ich konnte mich einigermaßen verständlich ausdrücken. Möglicherweise ist das ganze auch so simpel zu lösen, das ich den Wald vor lauter Bäumen nicht sehe. Gruß Christian bearbeitet 2. März 2020 von Christian Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 2. März 2020 Melden Teilen Geschrieben 2. März 2020 vor 4 Stunden schrieb Christian: Mein Problem ist, das ich nicht weiß wie ich mehrere Abfragen in eine Ausgabe bekomme. Die eigentliche Antwort auf diese Frage, hat Dir Jan ja schon gegeben, aber sind denn in diesem Fall überhaupt zwei separate Abfragen nötig? Ich hab keine VMWare-Umgebung zur Verfügung aber es sieht für mich, danach aus, als sollte folgender Schnipsel genügen ... Get-VM XYZ* | Select-Object Name, PowerState, @{ N = "ToolsVersion"; E = { $_.Config.Tools.ToolsVersion } }, @{ N = "ToolStatus"; E = { $_.Guest.ToolsVersionStatus }} Zitieren Link zu diesem Kommentar
Christian 0 Geschrieben 3. März 2020 Autor Melden Teilen Geschrieben 3. März 2020 Guten Morgen, das oben ist ja nur ein Beispiel. Ich erzeuge mir einen Report aus 12 Abfragen. ? Die Antwort von Jan ist leider nicht die Lösung für mein Problem. Grüße Christian Zitieren Link zu diesem Kommentar
testperson 1.707 Geschrieben 3. März 2020 Melden Teilen Geschrieben 3. März 2020 vor 2 Stunden schrieb Christian: Die Antwort von Jan ist leider nicht die Lösung für mein Problem. Im Foreach-Loop holst du dir mit deinen 12 Abfragen die Infos pro VM und speicherst die "Notfalls" in einem PSCustom-Object zwischen und schreibst das nachher ins HTML File. Ggfs. könntest du auch alle PSCustom-Objekte, die du im Loop immer wieder überschreiben würdest noch in ein Array schieben. Am Ende wird dann das Array aus PSCustom-Objekten in deine HTML Datei geschrieben. Zitieren Link zu diesem Kommentar
Christian 0 Geschrieben 3. März 2020 Autor Melden Teilen Geschrieben 3. März 2020 Danke Jan, das schaue ich mir genauer an! ;) Zitieren Link zu diesem Kommentar
daabm 1.366 Geschrieben 3. März 2020 Melden Teilen Geschrieben 3. März 2020 Ich hätte auch PSCustomObject empfohlen, wenn ich den Thread vor Olaf gesehen hätte Du kannst aber auch an die originären VM-Objekte zusätzliche Properties pappen, kommt auf das gleiche raus. Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 3. März 2020 Melden Teilen Geschrieben 3. März 2020 (bearbeitet) vor 17 Stunden schrieb Christian: das oben ist ja nur ein Beispiel. Ich erzeuge mir einen Report aus 12 Abfragen. ? Das hättest Du in Deiner initialen Anfrage gern mit erwähnen dürfen. Es macht meistens schon Sinn, wenn die Helfer wissen, worum es eigentlich geht. z.B. Wenn Du anfragst, ob jemand eine Idee hat, warum sich Deine Auto so langsam bewegt. So eine Forumsanfrage würde bestimmt wahnsinnig viele Rückfragen und Vermutungen produzieren. Wenn Du aber gleich mitgeschrieben hättest, dass Du Dein Auto bisher nur von außen schiebst, weil Du nicht weißt, wie man das richtig macht und auch schon Freunde gebeten hattest, Dir beim Schieben zu helfen, hättest Du vermutlich viel schneller die Antwort erhalten, dass man sich in ein Auto auch reinsetzen kann und sich das dann quasi von alleine bewegt. bearbeitet 3. März 2020 von BOfH_666 1 Zitieren Link zu diesem Kommentar
Christian 0 Geschrieben 4. März 2020 Autor Melden Teilen Geschrieben 4. März 2020 (bearbeitet) Hätte hätte Fahrradkette - ich werfe dir ja auch nicht vor das deine Antwort nur bedingt zu meiner Frage passt. Wenn ich mit meinem Auto zweimal links abbiegen möchte, ist die Antwort "bieg doch nur einmal links ab" nicht zielführend. Mal ganz davon abgesehen, das dein Vorschlag so auch kein Ergebnis liefert. Ich hoffe du nimmst es mir nicht übel, ist nicht böse gemeint. Beim nächsten Mal versuche ich es direkt etwas genauer. bearbeitet 4. März 2020 von Christian Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.