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í.