Out-String
Génère des objets d’entrée sous forme de chaîne.
Syntaxe
Out-String
[-Stream]
[-Width <Int32>]
[-InputObject <PSObject>]
[<CommonParameters>]
Description
L’applet Out-String
de commande convertit les objets d’entrée en chaînes. Par défaut, Out-String
accumule les chaînes et les retourne sous forme de chaîne unique, mais vous pouvez utiliser le paramètre Stream pour diriger Out-String
pour retourner une ligne à la fois ou créer un tableau de chaînes. Cette applet de commande vous permet de rechercher et de manipuler la sortie de chaîne comme vous le feriez dans des interpréteurs de commandes traditionnels quand la manipulation des objets est moins pratique.
PowerShell ajoute également la OSS
fonction qui appelle Out-String -Stream
comme moyen abrégé d’utiliser Out-String
dans un pipeline.
Exemples
Exemple 1 : Obtenir la culture actuelle et convertir les données en chaînes
Cet exemple obtient les paramètres régionaux de l’utilisateur actuel et convertit les données d’objet en chaînes.
$C = Get-Culture | Select-Object -Property *
Out-String -InputObject $C -Width 100
Parent : en
LCID : 1033
KeyboardLayoutId : 1033
Name : en-US
IetfLanguageTag : en-US
DisplayName : English (United States)
NativeName : English (United States)
EnglishName : English (United States)
TwoLetterISOLanguageName : en
ThreeLetterISOLanguageName : eng
ThreeLetterWindowsLanguageName : ENU
CompareInfo : CompareInfo - en-US
TextInfo : TextInfo - en-US
IsNeutralCulture : False
CultureTypes : SpecificCultures, InstalledWin32Cultures, FrameworkCultures
NumberFormat : System.Globalization.NumberFormatInfo
DateTimeFormat : System.Globalization.DateTimeFormatInfo
Calendar : System.Globalization.GregorianCalendar
OptionalCalendars : {System.Globalization.GregorianCalendar,
System.Globalization.GregorianCalendar}
UseUserOverride : True
IsReadOnly : False
La $C
variable stocke un objet Selected.System.Globalization.CultureInfo . L’objet est le résultat de l’envoi de Get-Culture
la sortie vers le bas du pipeline vers Select-Object
. Le paramètre Property utilise un caractère générique astérisque (*
) pour spécifier toutes les propriétés contenues dans l’objet.
Out-String
utilise le paramètre InputObject pour spécifier l’objet CultureInfo stocké dans la $C
variable. Les objets contenus dans sont convertis en $C
chaîne.
Remarque
Pour afficher le Out-String
tableau, stockez la sortie dans une variable et utilisez un index de tableau pour afficher les éléments. Pour plus d’informations sur l’index de tableau, consultez about_Arrays.
$str = Out-String -InputObject $C -Width 100
Exemple 2 : Utilisation d’objets
Cet exemple illustre la différence entre l'utilisation d'objets et l'utilisation de chaînes. La commande affiche un alias qui inclut le texte gcm, l’alias pour Get-Command
.
Get-Alias | Out-String -Stream | Select-String -Pattern "gcm"
Alias gcm -> Get-Command
Get-Alias
obtient les objets System.Management.Automation.AliasInfo , un pour chaque alias et envoie les objets vers le bas du pipeline. Out-String
utilise le paramètre Stream pour convertir chaque objet en chaîne plutôt que de concaténer tous les objets en une seule chaîne.
Les objets System.String sont envoyés dans le pipeline et Select-String
utilisent le paramètre Pattern pour rechercher des correspondances pour le gcm de texte.
Remarque
Si vous omettez le paramètre Stream, la commande affiche tous les alias, car Select-String
recherche le gcm de texte dans la chaîne unique qui Out-String
retourne.
Exemple 3 : Utilisez le paramètre Width pour empêcher la troncation.
Même si la plupart des sorties sont Out-String
encapsulées à la ligne suivante, il existe des scénarios dans lesquels la sortie est tronquée par le système de mise en forme avant d’être passée à Out-String
. Vous pouvez éviter la troncation à l’aide du paramètre Width .
PS> @{TestKey = ('x' * 200)} | Out-String
Name Value
---- -----
TestKey xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
PS> @{TestKey = ('x' * 200)} | Out-String -Width 250
Name Value
---- -----
TestKey xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Paramètres
-InputObject
Spécifie les objets à écrire dans une chaîne. Entrez une variable contenant les objets, ou tapez une commande ou une expression qui obtient ces objets.
Type: | PSObject |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Stream
Par défaut, Out-String
génère une seule chaîne mise en forme comme vous le feriez dans la console, y compris les en-têtes vides ou les nouvelles lignes de fin. Le paramètre Stream permet Out-String
de générer chaque ligne une par une. La seule exception à ceci est les chaînes multilignes. Dans ce cas, Out-String
la chaîne est toujours générée sous la forme d’une chaîne multiligne unique.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Width
Spécifie le nombre de caractères dans chaque ligne de la sortie. Tous les caractères supplémentaires sont encapsulés à la ligne suivante ou tronqués en fonction de l’applet de commande du formateur utilisée. Le paramètre Width s’applique uniquement aux objets mis en forme. Si vous omettez ce paramètre, la largeur est déterminée par les caractéristiques du programme hôte. Dans les fenêtres de terminal (console), la largeur de la fenêtre actuelle est utilisée comme valeur par défaut. Les fenêtres de console PowerShell ont la valeur par défaut sur une largeur de 80 caractères lors de l’installation.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
Vous pouvez diriger n’importe quel objet vers cette applet de commande.
Sorties
Cette applet de commande retourne la chaîne qu’elle crée à partir de l’objet d’entrée.
Notes
Les applets de commande qui contiennent le Out
verbe ne mettez pas en forme les objets. Les Out
applets de commande envoient des objets au formateur pour la destination d’affichage spécifiée.