Sdílet prostřednictvím


Out-String

Výstupem jsou vstupní objekty jako řetězec.

Syntax

NoNewLineFormatting (Výchozí)

Out-String
    [-Width <Int32>]
    [-NoNewline]
    [-InputObject <PSObject>]
    [<CommonParameters>]

StreamFormatting

Out-String
    [-Stream]
    [-Width <Int32>]
    [-InputObject <PSObject>]
    [<CommonParameters>]

Description

Rutina Out-String převede vstupní objekty na řetězce. Ve výchozím nastavení Out-String hromadí řetězce a vrátí je jako jeden řetězec, ale pomocí parametru Stream můžete směrovat Out-String k vrácení jednoho řádku po druhém nebo vytvoření pole řetězců. Tato rutina umožňuje prohledávat a manipulovat s výstupem řetězce stejně jako v tradičních prostředích, když je manipulace s objekty méně pohodlná.

Příklady

Příklad 1: Získání aktuální jazykové verze a převod dat na řetězce

Tento příklad získá místní nastavení pro aktuálního uživatele a převede data objektu na řetězce.

$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

Proměnná $C ukládá objekt Selected.System.Globalization.CultureInfo objektu. Objekt je výsledkem Get-Culture odeslání výstupu kanálu do Select-Object. Parametr Vlastnost používá zástupný znak hvězdičky (*) k určení všech vlastností, které jsou obsaženy v objektu.

Out-String pomocí parametru InputObject určuje objekt CultureInfo uložený v proměnné $C. Objekty v $C se převedou na řetězec.

Poznámka:

Pokud chcete zobrazit Out-String pole, uložte výstup do proměnné a pomocí indexu pole zobrazte prvky. Další informace o indexu pole naleznete v tématu about_Arrays.

$str = Out-String -InputObject $C -Width 100

Příklad 2: Práce s objekty

Tento příklad ukazuje rozdíl mezi prací s objekty a prací s řetězci. Příkaz zobrazí alias, který obsahuje text gcm, alias pro Get-Command.

Get-Alias | Out-String -Stream | Select-String -Pattern "gcm"
Alias           gcm -> Get-Command

Get-Alias získá System.Management.Automation.AliasInfo objekty, jeden pro každý alias a odešle objekty dolů kanálu. Out-String používá parametr Stream k převodu každého objektu na řetězec, nikoli ke zřetězení všech objektů do jednoho řetězce. Objekty System.String se odesílají do kanálu a Select-String pomocí parametru Pattern najde shody pro text gcm.

Poznámka:

Pokud parametr Stream vynecháte, příkaz zobrazí všechny aliasy, protože Select-String najde text gcm v jednom řetězci, který Out-String vrátí.

Příklad 3: Pokud chcete zabránit zkrácení, použijte parametr Width.

Zatímco většina výstupů z Out-String je zabalena na další řádek, existují scénáře, kdy je výstup zkrácen systémem formátování před předáním do Out-String. Zkrácení se můžete vyhnout pomocí parametru 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

Parametry

-InputObject

Určuje objekty, které mají být zapsány do řetězce. Zadejte proměnnou, která obsahuje objekty, nebo zadejte příkaz nebo výraz, který objekty získá.

Vlastnosti parametru

Typ:PSObject
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-NoNewline

Odebere všechny nové čáry z výstupu vygenerovaného formátovacím modulem PowerShellu. Newlines that are part of the string objects are preserved.

Tento parametr byl představen v PowerShellu 6.0.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

NoNewLineFormatting
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Stream

Ve výchozím nastavení Out-String výstupem je jeden řetězec formátovaný tak, jak byste ho viděli v konzole, včetně prázdných hlaviček nebo koncových novýchřádků. Parametr Stream umožňuje Out-String výstupu každého řádku po jednom. Jedinou výjimkou jsou víceřádkové řetězce. V takovém případě Out-String stále vypíše řetězec jako jeden víceřádkový řetězec.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

StreamFormatting
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Width

Určuje počet znaků v každém řádku výstupu. Všechny další znaky jsou zabalené na další řádek nebo zkráceny v závislosti na použité rutině formátovače. Parametr Width se vztahuje pouze na objekty, které jsou formátované. Pokud tento parametr vynecháte, šířka je určena vlastnostmi hostitelského programu. V oknech terminálu (konzola) se jako výchozí hodnota používá aktuální šířka okna. Okna konzoly PowerShellu mají při instalaci šířku 80 znaků.

Vlastnosti parametru

Typ:Int32
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

CommonParameters

Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.

Vstupy

PSObject

Objekty můžete odeslat kanálem do Out-String.

Výstupy

String

Out-String vrátí řetězec, který vytvoří ze vstupního objektu.

Poznámky

Rutiny, které obsahují příkaz Out, neformátují objekty. Rutiny Out odesílají objekty do formátovače určeného cíle zobrazení.