Out-String
Matar ut indataobjekt som en sträng.
Syntax
		NoNewLineFormatting (Standard)
	   
	Out-String
    [-Width <Int32>]
    [-NoNewline]
    [-InputObject <PSObject>]
    [<CommonParameters>]
		StreamFormatting
	 
	Out-String
    [-Stream]
    [-Width <Int32>]
    [-InputObject <PSObject>]
    [<CommonParameters>]
Description
Cmdleten Out-String konverterar indataobjekt till strängar. Som standard ackumulerar Out-String strängarna och returnerar dem som en enda sträng, men du kan använda parametern Stream för att dirigera Out-String att returnera en rad i taget eller skapa en matris med strängar. Med den här cmdleten kan du söka efter och ändra strängutdata som i traditionella gränssnitt när objektmanipulering är mindre praktiskt.
PowerShell lägger också till funktionen oss som anropar Out-String -Stream som ett kortfattat sätt att använda Out-String i en pipeline.
Exempel
Exempel 1: Hämta den aktuella kulturen och konvertera data till strängar
Det här exemplet hämtar de regionala inställningarna för den aktuella användaren och konverterar objektdata till strängar.
$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
Variabeln $C lagrar ett Selected.System.Globalization.CultureInfo-objekt. Objektet är resultatet av Get-Culture skickar utdata ned i pipelinen till Select-Object. Parametern Property använder ett jokertecken för asterisk (*) för att ange att alla egenskaper finns i objektet.
              Out-String använder parametern InputObject för att ange objektet CultureInfo som lagras i variabeln $C. Objekten i $C konverteras till en sträng.
Anmärkning
Om du vill visa Out-String matris lagrar du utdata till en variabel och använder ett matrisindex för att visa elementen. Mer information om matrisindexet finns i about_Arrays.
$str = Out-String -InputObject $C -Width 100
Exempel 2: Arbeta med objekt
Det här exemplet visar skillnaden mellan att arbeta med objekt och att arbeta med strängar. Kommandot visar ett alias som innehåller texten gcm, aliaset för Get-Command.
Get-Alias | Out-String -Stream | Select-String -Pattern "gcm"
Alias           gcm -> Get-Command
              Get-Alias hämtar System.Management.Automation.AliasInfo objekt, ett för varje alias, och skickar objekten nedåt i pipelinen. 
              Out-String använder parametern Stream för att konvertera varje objekt till en sträng i stället för att sammanfoga alla objekt till en enda sträng.
Objekten System.String skickas ned i pipelinen och Select-String använder parametern Pattern för att hitta matchningar för texten gcm.
Anmärkning
Om du utelämnar parametern Stream visar kommandot alla alias eftersom Select-String hittar texten gcm i den enda sträng som Out-String returnerar.
Exempel 3: Använd parametern Width för att förhindra trunkering
Även om de flesta utdata från Out-String omsluts till nästa rad, finns det scenarier där utdata trunkeras av formateringssystemet innan de skickas till Out-String. Du kan undvika trunkering med parametern 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
Parametrar
-InputObject 
		Anger de objekt som ska skrivas till en sträng. Ange en variabel som innehåller objekten eller skriv ett kommando eller uttryck som hämtar objekten.
Parameteregenskaper
| Typ: | PSObject | 
| Standardvärde: | None | 
| Stöder jokertecken: | False | 
| DontShow: | False | 
Parameteruppsättningar
(All)
| Position: | Named | 
| Obligatorisk: | False | 
| Värde från pipeline: | True | 
| Värde från pipeline efter egenskapsnamn: | False | 
| Värde från återstående argument: | False | 
-NoNewline 
		Tar bort alla nya linjer från utdata som genereras av PowerShell-formaterare. Nya radlinjer som ingår i strängobjekten bevaras.
Den här parametern introducerades i PowerShell 6.0.
Parameteregenskaper
| Typ: | SwitchParameter | 
| Standardvärde: | False | 
| Stöder jokertecken: | False | 
| DontShow: | False | 
Parameteruppsättningar
					NoNewLineFormatting 
					
				   
				| Position: | Named | 
| Obligatorisk: | False | 
| Värde från pipeline: | False | 
| Värde från pipeline efter egenskapsnamn: | False | 
| Värde från återstående argument: | False | 
-Stream
Som standard matar Out-String ut en enda sträng formaterad som du skulle se i konsolen, inklusive tomma rubriker eller avslutande nya raderna. Parametern Stream gör att Out-String kan mata ut varje rad en i taget. Det enda undantaget är flerradssträngar. I så fall kommer Out-String fortfarande att mata ut strängen som en enda sträng med flera ledningar.
Parameteregenskaper
| Typ: | SwitchParameter | 
| Standardvärde: | False | 
| Stöder jokertecken: | False | 
| DontShow: | False | 
Parameteruppsättningar
					StreamFormatting 
					
				 
				| Position: | Named | 
| Obligatorisk: | False | 
| Värde från pipeline: | False | 
| Värde från pipeline efter egenskapsnamn: | False | 
| Värde från återstående argument: | False | 
-Width
Anger antalet tecken på varje utdatarad. Eventuella ytterligare tecken omsluts till nästa rad eller trunkeras beroende på vilken formaterings-cmdlet som används. Parametern Width gäller endast för objekt som formateras. Om du utelämnar den här parametern bestäms bredden av värdprogrammets egenskaper. I terminalfönster (konsol) används den aktuella fönsterbredden som standardvärde. PowerShell-konsolfönster har som standard en bredd på 80 tecken vid installationen.
Parameteregenskaper
| Typ: | Int32 | 
| Standardvärde: | None | 
| Stöder jokertecken: | False | 
| DontShow: | False | 
Parameteruppsättningar
(All)
| Position: | Named | 
| Obligatorisk: | False | 
| Värde från pipeline: | False | 
| Värde från pipeline efter egenskapsnamn: | False | 
| Värde från återstående argument: | False | 
CommonParameters
Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.
Indata
PSObject
Du kan skicka valfritt objekt till den här cmdleten.
Utdata
String
Den här cmdleten returnerar strängen som den skapar från indataobjektet.
Kommentarer
De cmdletar som innehåller Out verb formaterar inte objekt. Cmdletarna Out skickar objekt till formateringsobjektet för det angivna visningsmålet.
PowerShell 7.2 har lagt till möjligheten att styra hur ANSI-escape-sekvenser återges. ANSI-dekorerade utdata som skickas till Out-String kan ändras baserat på inställningen för egenskapen $PSStyle.OutputRendering. Mer information finns i about_ANSI_Terminals.