NOM
ConvertFrom-StringData
RÉSUMÉ
Convertit une chaîne contenant une ou plusieurs paires clé/valeur en une table de hachage.
SYNTAXE
ConvertFrom-StringData [-StringData] <string> [<CommonParameters>]
DESCRIPTION
L'applet de commande ConvertFrom-StringData convertit une chaîne contenant une ou plusieurs paires clé/valeur en une table de hachage. Étant donné que chaque paire clé/valeur doit figurer sur une ligne distincte, des chaînes here-string sont souvent utilisées comme format d'entrée.
L'applet de commande ConvertFrom-StringData est considérée une applet de commande sécurisée qui peut être utilisée dans la section DATA d'un script ou d'une fonction. Si vous l'utilisez dans une section DATA, le contenu de la chaîne doit se conformer aux règles de cette section DATA. Pour plus d'informations, consultez about_Data_Sections.
PARAMÈTRES
-StringData <string>
Spécifie la chaîne à convertir. Vous pouvez utiliser ce paramètre ou diriger une chaîne vers ConvertFrom-StringData. Le nom de paramètre est facultatif.
La valeur de ce paramètre doit être une chaîne entourée de guillemets simples (chaîne entre guillemets simples), une chaîne entourée de guillemets doubles (chaîne entre guillemets doubles) ou une chaîne here-string contenant une ou plusieurs paires clé/valeur. Chaque paire clé/valeur doit figurer sur une ligne distincte ou être séparée par des caractères de nouvelle ligne (`n).
Vous pouvez inclure des commentaires dans la chaîne, mais ils ne peuvent pas figurer sur la même ligne qu'une paire clé/valeur. Les commentaires ne sont pas inclus dans la table de hachage.
Une chaîne here-string est une chaîne constituée d'une ou plusieurs lignes au sein desquelles les guillemets sont interprétés littéralement. Pour plus d'informations, consultez about_Quoting_Rules.
Obligatoire ? true
Position ? 1
Valeur par défaut
Accepter l'entrée de pipeline ? true (ByValue)
Accepter les caractères génériques ? false
<CommonParameters>
Cette applet de commande prend en charge les paramètres courants : Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer et OutVariable. Pour plus d'informations, tapez
« get-help about_commonparameters ».
ENTRÉES
System.String
Vous pouvez diriger une chaîne contenant une paire clé/valeur vers ConvertFrom-StringData.
SORTIES
System.Collections.Hashtable
ConvertFrom-StringData retourne une table de hachage créée à partir des paires clé/valeur.
NOTES
Une chaîne here-string est une chaîne constituée d'une ou plusieurs lignes au sein desquelles les guillemets sont interprétés littéralement. Pour plus d'informations, consultez about_Quoting_Rules.
ConvertFrom-StringData peut être utile dans les scripts affichant des messages utilisateur dans plusieurs langues. Vous pouvez utiliser les tables de hachage de style dictionnaire pour isoler des chaînes de texte du code, par exemple dans les fichiers de ressources, puis mettre en forme ces chaînes de texte pour une utilisation dans des outils de traduction.
-------------------------- EXEMPLE 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.
Description
-----------
Ces commandes convertissent une chaîne here-string entre guillemets simples de messages utilisateur en une table de hachage. Dans une chaîne entre guillemets simples, les valeurs ne sont pas substituées aux variables et les expressions ne sont pas évaluées.
La première commande crée une chaîne here-string et l'enregistre dans la variable $here.
La deuxième commande utilise l'applet de commande ConvertFrom-StringData pour convertir la chaîne here-string de la variable $here en une table de hachage.
-------------------------- EXEMPLE 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
...
Description
-----------
Ces commandes montrent que ConvertFrom-StringData convertit réellement une chaîne here-string en une table de hachage.
La première commande crée une chaîne here-string entre guillemets doubles qui inclut une paire clé/valeur et l'enregistre dans la variable $p.
La deuxième commande utilise un opérateur de pipeline (|) pour envoyer la variable $p à l'applet de commande Get-Member. Le résultat indique que $p est une chaîne (System.String).
La troisième commande utilise l'applet de commande ConvertFrom-StringData pour convertir la chaîne here-string de la variable $p en une table de hachage. La commande stocke le résultat dans la variable $hash.
La dernière commande utilise un opérateur de pipeline (|) pour envoyer la variable $hash à l'applet de commande Get-Member. Le résultat montre que le contenu de la variable $hash est une table de hachage (System.Collections.Hashtable).
-------------------------- EXEMPLE 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
Description
-----------
Cette commande convertit une chaîne here-string entre guillemets simples qui contient des paires clé/valeur en une table de hachage.
Dans cette commande, la valeur du paramètre StringData est une chaîne here-string, au lieu d'une variable contenant une chaîne here-string. L'un et l'autre format sont valides.
La chaîne here-string inclut un commentaire sur l'une des chaînes. Il est possible d'insérer des commentaires dans les chaînes, pourvu qu'ils ne figurent pas sur la même ligne qu'une paire clé/valeur.
-------------------------- EXEMPLE 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
Description
-----------
Cet exemple convertit une chaîne entre guillemets doubles normale (pas une chaîne here-string) en une table de hachage et l'enregistre dans la variable $a.
Pour satisfaire la condition selon laquelle chaque paire clé/valeur doit figurer sur une ligne distincte, il utilise le caractère de nouvelle ligne Windows PowerShell (`n) pour séparer les paires.
Le résultat est une table de hachage de l'entrée. Les autres commandes affichent la sortie.
-------------------------- EXEMPLE 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.
Description
-----------
Cet exemple affiche une commande ConvertFrom-StringData utilisée dans la section DATA d'un script. Les instructions au-dessous de la section DATA affichent le texte à l'utilisateur.
Étant donné que le texte inclut des noms de variables, il doit être entouré d'une chaîne entre guillemets simples afin que les variables soient interprétées littéralement, et non pas développées. Les variables ne sont pas autorisées dans la section DATA.
-------------------------- EXEMPLE 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.
Description
-----------
Cet exemple montre que vous pouvez utiliser un opérateur de pipeline (|) pour envoyer une chaîne à l'applet de commande ConvertFrom-StringData.
La première commande enregistre une chaîne here-string dans la variable $here. La deuxième commande utilise un opérateur de pipeline (|) pour envoyer la variable $here à l'applet de commande ConvertFrom-StringData. La commande enregistre le résultat dans la variable $hash.
La dernière commande affiche le contenu de la variable $hash.
LIENS CONNEXES
Online version: http://go.microsoft.com/fwlink/?LinkID=113288
about_Data_Sections
about_Quoting_Rules
about_Script_Internationalization
Aucun commentaire:
Enregistrer un commentaire