about_hash_tables - PowerShell Befehl Hilfe und Beispiele

Beschreibt das Erstellen, Verwenden und Sortieren von (about_hash_tables)

THEMA
about_Hash_Tables
KURZBESCHREIBUNG
Beschreibt das Erstellen, Verwenden und Sortieren von Hashtabellen in Windows PowerShell.
DETAILBESCHREIBUNG
Eine Hashtabelle, auch als Wörterbuch oder assoziatives Array bezeichnet, bildet eine kompakte Datenstruktur, in der ein oder mehrere Name-Wert-Paare gespeichert werden. Eine Hashtabelle kann beispielsweise eine Reihe von Namen und Mitarbeiter-IDs, Computernamen und IP-Adressen oder Meldungs-IDs und Meldungstexten enthalten. Hashtabellen werden häufig verwendet, da sie beim Suchen und Abrufen von Daten sehr effizient sind. Sie können Hashtabellen verwenden, um Listen zu speichern und berechnete Eigenschaften in Windows PowerShell zu erstellen. Zudem verfügt Windows PowerShell über das Cmdlet "ConvertFrom-StringData", mit dem Zeichenfolgen in eine Hashtabelle konvertiert werden können. Erstellen von Hashtabellen Die Elemente in einer Hashtabelle werden in Name-Wert-Paaren angeordnet, z. B.: Msg1="Geben Sie Ihr Kennwort ein." Msg2="Der Pfadparameter ist erforderlich." Msg3="Der Alias von Get-Command ist gcm." Die Werte werden den Namen zugeordnet, sodass Windows PowerShell den Wert zurückgibt, wenn Sie den Namen übermittelt haben. In Windows PowerShell wird für Hashtabellen die folgende Syntax verwendet: @{ <Name> = <Wert>; [<Name> = <Wert> ] ...} Folgen Sie beim Erstellen einer Hashtabelle diesen Richtlinien: - Beginnen Sie die Hashtabelle mit dem at-Zeichen (@). - Schließen Sie die Hashtabelle in geschweifte Klammern ({}) ein. - Geben Sie als Inhalt der Hashtabelle ein oder mehrere Name-Wert-Paare ein. - Trennen Sie jeden Namen vom zugehörigen Wert durch ein Gleichheitszeichen (=). - Trennen Sie die Name-Wert-Paare durch ein Semikolon (;). - Namen oder Werte mit Leerzeichen schließen Sie in Anführungszeichen ein. Eine Hashtabelle der obigen Benutzermeldungen kann beispielsweise wie folgt aussehen: @{ Msg1="Geben Sie Ihr Kennwort ein."; Msg2="Der Pfadparameter ist erforderlich."; Msg3="Der Alias von Get-Command ist gcm."; } Wenn Sie in Skripts und Befehlen eine Hashtabelle verwenden möchten, speichern Sie diese in einer Variablen. Der Wert der Variablen bildet ein Hashtabellenobjekt (System.Collections.Hashtable), und jeder Name in den Name-Wert-Paaren stellt eine Eigenschaft des Hashtabellenobjekts dar. Mit den folgenden Befehlen speichern Sie die Hashtabelle mit Benutzermeldungen in der Variablen "$a" und zeigen die Werte mit der DOT-Methode an. C:\PS> $a = @{ >> Msg1="Geben Sie Ihr Kennwort ein."; >> Msg2="Der Pfadparameter ist erforderlich."; >> Msg3="Der Alias von Get-Command ist gcm."; >> } C:\PS> $a Name Value ---- ----- Msg1 Geben Sie Ihr Kennwort ein. Msg3 Der Alias von Get-Command ist gcm. Msg2 Der Pfadparameter ist erforderlich. C:\PS> $a.Msg1 Geben Sie Ihr Kennwort ein. Hashtabellen sind auf keinen bestimmten Datentyp beschränkt. In einer Hashtabelle können Sie jeden Datentyp eingeben, und Sie können Datentypen in einer einzelnen Hashtabelle kombinieren. Beispielsweise können Sie eine Hashtabelle erstellen, die eine ganze Zahl, den Aufruf eines Cmdlets und eine Zeichenfolge enthält. Sortieren von Hashtabellen Wenn Sie die Hashtabelle alphabetisch nach Schlüsseln oder Werten sortieren möchten, rufen Sie mit der GetEnumerator-Methode von Hashtabellen die Schlüssel und Werte in der Hashtabelle ab, und sortieren Sie sie dann mit dem Cmdlet "Sort-Object". Zum Beispiel sortieren Sie die Hashtabelle in "$a" mit dem folgenden Befehl alphabetisch nach Schlüsseln. C:\PS> $a.getenumerator() | sort-object -property key Name Value ---- ----- Msg1 Geben Sie Ihr Kennwort ein. Msg2 Der Pfadparameter ist erforderlich. Msg3 Der Alias von Get-Command ist gcm. Mit dem folgenden Befehl sortieren Sie die Hashwerte mit derselben Methode in absteigender Reihenfolge. C:\PS> $a.getenumerator() | sort-object -property value -descending Name Value ---- ----- Msg2 Der Pfadparameter ist erforderlich. Msg3 Der Alias von Get-Command ist gcm. Msg1 Geben Sie Ihr Kennwort ein. ConvertFrom-StringData Mit dem Cmdlet "ConvertFrom-StringData" wird eine Zeichenfolge oder here-Zeichenfolge von Name-Wert-Paaren in eine Hashtabelle konvertiert. Das Cmdlet "ConvertFrom-StringData" können Sie im Data-Abschnitt eines Skripts sicher verwenden, und Sie können es mit dem Cmdlet "Import-LocalizedData" verwenden, um Benutzermeldungen in der Benutzeroberflächenkultur des aktuellen Benutzers anzuzeigen. Here-Zeichenfolgen sind besonders nützlich, wenn die Werte in der Hashtabelle Anführungszeichen enthalten. (Weitere Informationen zu here-Zeichenfolgen finden Sie unter "about_Quoting_Rules". Im folgenden Beispiel wird gezeigt, wie Sie eine here-Zeichenfol ge der Benutzermeldungen im obigen Beispiel erstellen und diese mit ConvertFrom-StringData aus einer Zeichenfolge in eine Hashtabelle konvertieren. Mit dem folgenden Befehl erstellen Sie eine here-Zeichenfolge der Name-Wert-Paare und speichern diese dann in der Variablen "$string". C:\PS> $string = @" Msg1="Geben Sie Ihr Kennwort ein." Msg2="Der Pfadparameter ist erforderlich." Msg3="Der Alias von Get-Command ist gcm." "@ In diesem Befehl wird das Cmdlet "ConvertFrom-StringData" verwendet, um die here-Zeichenfolge in eine Hashtabelle zu konvertieren. C:\PS> convertfrom-stringdata $string Name Value ---- ----- Msg3 "Der Alias von Get-Command ist gcm." Msg2 "Der Pfadparameter ist erforderlich." Msg1 "Geben Sie Ihr Kennwort ein." SIEHE AUCH about_Arrays about_Quoting_Rules about_Script_Internationalization ConvertFrom-StringData Import-LocalizedData C:\Windows>powershell get-help about_History -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: Beschreibt das Erstellen, Verwenden und Sortieren von

HTTP: ... PS_Windows/de/about_hash_tables.htm
0.061
15551
Microsoft-Spiele, die Teredo verwenden, wie Forza Horizon! usw!
Kann ich Ordnerverknüpfungen im Startmenü unter Windows 11 hinzufügen?
Wie kann ich Dateien filtern? Geht das überhaupt im Quad-Explorer?
Questions and answers about Explorer, pictures, posters, prints and more!
Entfernen vom Papierkorbsymbol in Windows 11 oder 10?
Änderbare Schriftgröße und Schriftfarbe in jeder Registerkarte der cmd.exe!
Wo kann ich Windows 11 zurücksetzen, gibt es diese Optionen?
Zurück zu Windows 10 von Windows 11?
Eine Tastenkombination zum Öffnen eines Ordners verwenden!
Hilfe, keine Symbolleiste und Adressleiste in der Explorer Ansicht von Q-Dir?



(0)