PowerShell: XML-Tags für benutzerdefinierte Eigenschaften mit ConvertTo-XML-Ausgabe

8

Ich erstelle ein neues Objekt in PowerShell und verwende eine Hashtabelle, um Eigenschaftswerte festzulegen. Ich möchte dann das Objekt mit der ConvertTo-XML-Methode in das XML-Format exportieren.

%Vor%

Die XML-Ausgabe lautet wie folgt:

%Vor%

Ich möchte, dass die XML-Tags wie folgt formatiert werden:

%Vor%

Und dann, wenn es eine gute Lösung dafür gibt, gibt es auch eine Möglichkeit, die Objekt (e) -Tags auch benutzerdefiniert zu machen?

Danke.

    
corneria 12.11.2013, 16:51
quelle

4 Antworten

7

Ich denke nicht, dass du mit ConvertTo-Xml dorthin kommen kannst. Sie können jedoch here strings dazu verwenden. Es ist eine Art Low-Tech, aber immer noch ziemlich cool:

%Vor%

Du könntest das XML DOM verwenden, um dieses Dokument zu erstellen, aber das wäre mehr Arbeit und für solch ein einfaches Dokument denke ich, dass der here string Ansatz ziemlich gut funktioniert. Es ist auch gut für jede Art von Text Templating.

    
Keith Hill 12.11.2013, 17:37
quelle
2

Hier ist ein One-Liner:

%Vor%     
mjolinor 12.11.2013 17:50
quelle
1

Mjolinors einziger Liner ist sehr nützlich für die Ausgabe von benutzerdefinierten Powershell-Objekttabellen im oben beschriebenen XML-Format. Es ist jedoch ein Fehler darin - das schließende "/" XML-Tag ist falsch herum. Dies bedeutet, dass der XML-Code ungültig ist und einen Fehler "XML Parsing Error: not well-formed" ergibt. Nahm mich eine Weile, um herauszufinden, was falsch war, hier ist der korrigierte Code, damit andere es nicht wieder herausfinden müssen:

%Vor%

Dabei ist $ SelectedResults die Ausgabe des PS Custom-Objekts.

Sie können die XML-Ausgabe testen und ob sie hier gültig ist - Ссылка

    
Pete 02.02.2018 12:23
quelle
0

Die ausgewählte Antwort funktionierte für mich, aber ich musste diese Zeile ändern

%Vor%

bis

%Vor%

Schlüssel und Werte statt Schlüssel und Wert

Wenn Sie möchten, dass die Leerzeichen im Editor angezeigt werden, verwenden Sie

%Vor%

(Ich habe nicht genug Reputation, um die Antwort zu kommentieren)

    
Harsha Laxman 26.03.2018 19:04
quelle

Tags und Links