Out-String

Génère des objets d’entrée sous forme de chaînes.

Syntax

Out-String
   [-Width <Int32>]
   [-NoNewline]
   [-InputObject <PSObject>]
   [<CommonParameters>]
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 retourner Out-String une ligne à la fois ou créer et 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.

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 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 $C sont convertis en chaîne.

Notes

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 concaténation de tous les objets en une seule chaîne. Les objets System.String sont envoyés vers le bas du pipeline et Select-String utilisent le paramètre Pattern pour rechercher des correspondances pour le gcm de texte.

Notes

Si vous omettez le paramètre Stream , la commande affiche tous les alias, car Select-String recherche le texte gcm dans la chaîne unique qui Out-String retourne.

Exemple 3 : Utilisez le paramètre Width pour empêcher la troncation.

Bien que la plupart des sorties soient 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
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-NoNewline

Supprime toutes les lignes de sortie générées par le formateur PowerShell. Les sauts de ligne qui font partie des objets de chaîne sont conservés.

Ce paramètre a été introduit dans PowerShell 6.0.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Stream

Indique que l’applet de commande envoie une chaîne distincte pour chaque ligne d’un objet d’entrée. Par défaut, les chaînes de chaque objet sont accumulées et envoyées sous la forme d'une chaîne unique.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 de 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 active est utilisée comme valeur par défaut. Les fenêtres de console PowerShell ont par défaut une largeur de 80 caractères lors de l’installation.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entrées

PSObject

Vous pouvez envoyer des objets vers le pipeline vers Out-String.

Sorties

String

Out-String 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.