ConvertFrom-StringData - PowerShell Befehl Hilfe und Beispiele

Konvertiert eine Zeichenfolge, die mindestens ein Schlüssel-Wert-Paar enthält, in eine Hashtabelle. (ConvertFrom-StringData)


NAME
ConvertFrom-StringData
ÜBERSICHT
Konvertiert eine Zeichenfolge, die mindestens ein Schlüssel-Wert-Paar enthält, in eine Hashtabelle.
SYNTAX
ConvertFrom-StringData [-StringData] <string> [<CommonParameters>]
BESCHREIBUNG
Mit dem Cmdlet "ConvertFrom-StringData" wird eine Zeichenfolge, die eines oder mehrere Schlüssel-Wert-Paare enthält, in eine Hashtabelle konvertiert. Da sich jedes Schlüssel-Wert-Paar in einer eigenen Zeile befinden muss, werden als Eingabeformat häufig here-Zeichenfolgen verwendet. Das Cmdlet "ConvertFrom-StringData" gilt als sicheres Cmdlet, das im DATA-Abschnitt eines Skripts oder einer Funktion verwendet werden kann. Bei Verwendung in einem DATA-Abschnitt muss der Inhalt der Zeichenfolge den Regeln für den DATA-Abschnitt entsprechen. Weitere Informationen finden Sie unter "about_Data_Sections".
PARAMETER
-StringData <string> Gibt die zu konvertierende Zeichenfolge an. Sie können diesen Parameter verwenden oder eine Zeichenfolge über die Pipeline an ConvertFrom-StringData übergeben. Der Parametername ist optional. Der Wert dieses Parameters muss einer in einfache Anführungszeichen eingeschlossenen Zeichenfolge, einer in doppelte Anführungszeichen eingeschlossenen Zeichenfolge oder einer here-Zeichenfolge entsprechen, die mindestens ein Schlüssel-Wert-Paar enthält. Jedes Schlüssel-Wert-Paar muss sich in einer eigenen Zeile befinden oder durch Zeilenumbruchzeichen (`n) von anderen Paaren getrennt sein. Sie können Kommentare in die Zeichenfolge einschließen, jedoch dürfen sich die Kommentare nicht in derselben Zeile wie ein Schlüssel-Wert-Paar befinden. Die Kommentare sind nicht in der Hashtabelle enthalten. Eine here-Zeichenfolge ist eine Zeichenfolge, die aus einer oder mehreren Zeilen besteht, in denen Anführungszeichen buchstäblich interpretiert werden. Weitere Informationen finden Sie unter "about_Quoting_Rules". Erforderlich? true Position? 1 Standardwert Pipelineeingaben akzeptieren?true (ByValue) Platzhalterzeichen akzeptieren?false <CommonParameters> Dieses Cmdlet unterstützt folgende allgemeine Parameter: "Verbose", "Debug", "ErrorAction", "ErrorVariable", "WarningAction", "WarningVariable", "OutBuffer" und "OutVariable". Weitere Informationen erhalten Sie mit dem Befehl "get-help about_commonparameters".
EINGABEN
System.String Sie können eine Zeichenfolge, die ein Schlüssel-Wert-Paar enthält, über die Pipeline an ConvertFrom-StringData übergeben.
AUSGABEN
System.Collections.Hashtable ConvertFrom-StringData gibt eine Hashtabelle zurück, die aus den Schlüssel-Wert-Paaren erstellt wird.
HINWEISE
Eine here-Zeichenfolge ist eine Zeichenfolge, die aus einer oder mehreren Zeilen besteht, in denen Anführungszeichen buchstäblich interpretiert werden. Weitere Informationen finden Sie unter "about_Quoting_Rules". ConvertFrom-StringData kann in Skripts hilfreich sein, die Benutzermeldungen in mehreren Sprachen anzeigen. Sie können die wie Wörterbücher strukturierten Hashtabellen verwenden, um Textzeichenfolgen von Code zu isolieren (z. B. in Ressourcendateien) und die Textzeichenfolgen für die Verwendung in Übersetzungstools zu formatieren.

Beispiele

BEISPIEL 1
C:\PS>$here = @' Msg1 = The string parameter is required. Msg2 = Credentials are required for this command. Msg3 = The specified variable does not exist. '@ C:\PS> convertfrom-stringdata -stringdata $here Name Value ---- ----- Msg3 The specified variable does not exist. Msg2 Credentials are required for this command. Msg1 The string parameter is required. Beschreibung ----------- Mit diesen Befehlen wird eine in einfache Anführungszeichen eingeschlossene here-Zeichenfolge von Benutzermeldungen in eine Hashtabelle konvertiert. Werte in einer Zeichenfolge in einfachen Anführungszeichen werden nicht als Variablen ersetzt, und Ausdrücke werden nicht ausgewertet. Im ersten Befehl wird eine here-Zeichenfolge erstellt und in der Variablen "$here" gespeichert. Im zweiten Befehl wird die here-Zeichenfolge in der Variablen "$here" mit dem Cmdlet "ConvertFrom-StringData" in eine Hashtabelle konvertiert.
BEISPIEL 2
C:\PS>$p = @" ISE = Windows PowerShell Integrated Scripting Environment "@ C:\PS> $p | get-member TypeName: System.String Name MemberType Definition ---- ---------- ---------- Clone Method System.Object Clone() ... C:\PS> $hash = convertfrom-stringdata -stringdata $p C:\PS> $hash | get-member TypeName: System.Collections.Hashtable Name MemberType Definition ---- ---------- ---------- Add Method System.Void Add(Object key, Object ... Beschreibung ----------- Diese Befehle veranschaulichen, dass ConvertFrom-StringData tatsächlich eine here-Zeichenfolge in eine Hashtabelle konvertiert. Im ersten Befehl wird eine here-Zeichenfolge in doppelten Anführungszeichen erstellt, die ein Schlüssel-Wert-Paar enthält, und in der Variablen "$p" gespeichert. Im zweiten Befehl wird die Variable "$p" mithilfe des Pipelineoperators (|) an das Cmdlet "Get-Member" gesendet. Das Ergebnis zeigt, dass $p eine Zeichenfolge (System.String) ist. Im dritten Befehl wird das Cmdlet "ConvertFrom-StringData" verwendet, um die here-Zeichenfolge in $p in eine Hashtabelle zu konvertieren. Das Ergebnis wird in der Variablen "$hash" gespeichert. Im letzten Befehl wird die Variable "$hash" mithilfe des Pipelineoperators (|) an das Cmdlet "Get-Member" gesendet. Das Ergebnis zeigt, dass der Inhalt der Variablen "$hash" eine Hashtabelle (System.Collections.Hashtable) ist.
BEISPIEL 3
C:\PS>convertfrom-stringdata -stringdata @' Name = Disks.ps1 # Category is optional. Category = Storage Cost = Free '@ Name Value ---- ----- Cost Free Category Storage Name Disks.ps1 Beschreibung ----------- Mit diesem Befehl wird eine here-Zeichenfolge in einfachen Anführungszeichen, die mehrere Schlüssel-Wert-Paare enthält, in eine Hashtabelle konvertiert. In diesem Befehl ist der Wert des StringData-Parameters eine here-Zeichenfolge, statt einer Variablen, die eine here-Zeichenfolge enthält. Beide Formate sind gültig. Die here-Zeichenfolge enthält einen Kommentar über eine der Zeichenfolgen. Kommentare in Zeichenfolgen sind zulässig, sofern sich der Kommentar in einer anderen Zeile als ein Schlüssel-Wert-Paar befindet.
BEISPIEL 4
C:\PS>$a = convertfrom-stringdata -stringdata "Top = Red `n Bottom = Blue" C:\PS> "Top = " + $a.Top Top = Red C:\PS> "Bottom = " + $a.Bottom Bottom = Blue Beschreibung ----------- In diesem Beispiel wird eine reguläre Zeichenfolge (keine here-Zeichenfolge) in doppelten Anführungszeichen in eine Hashtabelle konvertiert und in der Variablen "$a" gespeichert. Um die Bedingung zu erfüllen dass sich jedes Schlüssel-Wert-Paar in einer eigenen Zeile befinden muss, werden die Paare mithilfe des Windows PowerShell-Zeilenumbruchzeichens (`n) getrennt. Das Ergebnis ist eine Hashtabelle der Eingabe. Mit den restlichen Befehlen wird die Ausgabe angezeigt.
BEISPIEL 5
C:\PS>$TextMsgs = DATA { ConvertFrom-StringData @' Text001 = The $Notebook variable contains the name of the user's system notebook. Text002 = The $MyNotebook variable contains the name of the user's private notebook. '@ } C:\PS> $TextMsgs.Text001 The $Notebook variable contains the name of the user's system notebook. C:\PS> $TextMsgs.Text002 The $MyNotebook variable contains the name of the user's private notebook. Beschreibung ----------- In diesem Beispiel wird der im DATA-Abschnitt eines Skripts verwendete Befehl "ConvertFrom-StringData" veranschaulicht. Mit den Anweisungen unter dem DATA-Abschnitt wird der Text für den Benutzer angezeigt. Da der Text Variablennamen enthält, muss er in eine Zeichenfolge in einfachen Anführungszeichen eingeschlossen werden, damit die Variablen buchstäblich interpretiert und nicht erweitert werden. Variablen sind im DATA-Abschnitt nicht zulässig.
BEISPIEL 6
C:\PS>$here = @' Msg1 = The string parameter is required. Msg2 = Credentials are required for this command. Msg3 = The specified variable does not exist. '@ C:\PS> $hash = $here | convertfrom-stringdata C:\PS> $hash Name Value ---- ----- Msg3 The specified variable does not exist. Msg2 Credentials are required for this command. Msg1 The string parameter is required. Beschreibung ----------- In diesem Beispiel wird gezeigt, dass eine Zeichenfolge mithilfe des Pipelineoperators (|) an ConvertFrom-StringData gesendet werden kann. Im ersten Befehl wird eine here-Zeichenfolge in der Variablen "$here" gespeichert. Im zweiten Befehl wird die Variable "$here" mithilfe des Pipelineoperators (|) an ConvertFrom-StringData gesendet. Das Ergebnis wird in der Variablen "$hash" gespeichert. Im letzten Befehl wird der Inhalt der Variablen "$hash" angezeigt. VERWANDTE LINKS Online version: http://go.microsoft.com/fwlink/?LinkID=113288 (möglicherweise auf Englisch) about_Data_Sections about_Quoting_Rules about_Script_Internationalization C:\Windows>powershell get-help Export-CSV -full

Microsoft Windows [Version 10.0.19045.3693]
Copyright (c) 2023 Microsoft Corporation.

ColorConsole [Version 3.7.1000] PowerShell 2.0-Export

Windows 11, 10, 8.1, 8, 7 / Server 2022, 2019, 2016











Windows-10


... Windows 10 FAQ
... Windows 10 How To


Windows 10 How To


... Windows 11 How To
... Windows 10 FAQ



PowerShell: Konvertiert eine Zeichenfolge, die mindestens ein Schlüssel-Wert-Paar enthält, in eine Hashtabelle.

HTTP: ... PS_Windows/de/ConvertFrom-StringData.htm
0.077
21225
7 Lösungen zum Öffnen der Windows 11 / 10 Systemsteuerung!
Download kostenloses Text Bearbeitungs Programm!
Hilfe die Desktopsymbole sind verschwunden unter Windows 11 und 10!
Automatically expand folder in Windows 10/11 tree view (open)!
Bat (flittermouse) clock suitable for Halloween Windows Desktop Wallpaper!
Unter Windows 10/11 verschwinden Programme und Fenster Apps, warum?
Daten suchen nach Datum sortieren und bei Neustart löschen!
Free text reading tool for Windows 11, 10, ...! 
Warum dauert das Kompilieren in VS 2022 ewig, was kann ich tun?
Probleme bei Pfaden mit Leerzeichen und Umgebungsvariablen gelöst!



(0)