Out-String
A bemeneti objektumokat sztringként adja ki.
Syntax
NoNewLineFormatting (Alapértelmezett)
Out-String
[-Width <Int32>]
[-NoNewline]
[-InputObject <PSObject>]
[<CommonParameters>]
StreamFormatting
Out-String
[-Stream]
[-Width <Int32>]
[-InputObject <PSObject>]
[<CommonParameters>]
Description
A Out-String parancsmag sztringekké alakítja a bemeneti objektumokat. Alapértelmezés szerint Out-String összegyűjti a sztringeket, és egyetlen sztringként adja vissza őket, de a Stream paraméterrel utasíthatja a Out-String, hogy egyszerre egy sort adjon vissza, vagy sztringtömböt hozzon létre. Ezzel a parancsmaggal ugyanúgy kereshet és módosíthat sztringkimenetet, mint a hagyományos rendszerhéjakban, ha az objektumkezelés kevésbé kényelmes.
A PowerShell emellett hozzáadja a oss függvényt, amely rövid úton meghívja a Out-String -Stream a folyamat Out-String használatára.
Példák
1. példa: Az aktuális kultúra lekérése és az adatok sztringekké alakítása
Ez a példa lekéri az aktuális felhasználó területi beállításait, és sztringekké alakítja az objektumadatokat.
$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
A $C változó egy Selected.System.Globalization.CultureInfo objektumot tárol. Az objektum annak az eredménye, hogy Get-Culture kimenetet küld le a folyamatról a Select-Object. A Tulajdonság paraméter csillag (*) helyettesítő karaktert használ az objektumban található összes tulajdonság megadásához.
Out-String
InputObject paraméter használatával adja meg a változóban tárolt $C objektumot. A $C objektumai sztringgé alakulnak.
Megjegyzés:
A Out-String tömb megtekintéséhez tárolja a kimenetet egy változóban, és használjon tömbindexet az elemek megtekintéséhez. A tömbindexről további információt a about_Arrayscímű témakörben talál.
$str = Out-String -InputObject $C -Width 100
2. példa: Objektumok használata
Ez a példa bemutatja az objektumok és a sztringek használata közötti különbséget. A parancs egy aliast jelenít meg, amely tartalmazza a szöveget gcm, a Get-Commandaliasát.
Get-Alias | Out-String -Stream | Select-String -Pattern "gcm"
Alias gcm -> Get-Command
Get-Alias lekéri az System.Management.Automation.AliasInfo objektumokat, mindegyik aliashoz egyet, és elküldi az objektumokat a folyamatnak.
Out-String a Stream paraméterrel konvertálja az egyes objektumokat sztringgé ahelyett, hogy az összes objektumot egyetlen sztringgé összefűzné.
A rendszer a System.String objektumokat küldi le a folyamatról, és Select-String a Minta paraméterrel keres egyezéseket a szöveg gcm.
Megjegyzés:
Ha kihagyja a Stream paramétert, a parancs megjeleníti az összes aliast, mert Select-String megkeresi az által visszaadott egyetlen sztringben Out-String szöveget.
3. példa: A Szélesség paraméter használata a csonkolás megakadályozásához
Bár a Out-String kimenetének nagy része a következő sorba van csomagolva, vannak olyan forgatókönyvek, amikor a formázási rendszer csonkolja a kimenetet, mielőtt átadta volna a Out-String. A Szélesség paraméterrel elkerülheti a csonkolást.
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éterek
-InputObject
Megadja a sztringbe írandó objektumokat. Adjon meg egy változót, amely tartalmazza az objektumokat, vagy írjon be egy parancsot vagy kifejezést, amely lekéri az objektumokat.
Paramétertulajdonságok
| Típus: | PSObject |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-NoNewline
Eltávolítja az összes újvonalat a PowerShell-formázó által létrehozott kimenetből. A sztringobjektumok részét képező új vonalak megmaradnak.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
NoNewLineFormatting
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Stream
Alapértelmezés szerint Out-String egyetlen, a konzolon látható módon formázott sztringet ad ki, beleértve az üres fejléceket vagy a záró új vonalakat is. A Stream paraméter lehetővé teszi, hogy Out-String egyenként kimenetelje az egyes sorokat. Ez alól az egyetlen kivétel a többsoros sztringek. Ebben az esetben a Out-String továbbra is egyetlen, többsoros sztringként adja ki a sztringet.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
StreamFormatting
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Width
Az egyes kimeneti sorokban szereplő karakterek számát adja meg. A további karaktereket a rendszer a használt formázó parancsmagtól függően a következő sorba burkolja vagy csonkolja. A Width paraméter csak formázott objektumokra vonatkozik. Ha kihagyja ezt a paramétert, a szélességet a gazdagépprogram jellemzői határozzák meg. A terminál (konzol) ablakaiban az aktuális ablakszélesség lesz az alapértelmezett érték. A PowerShell-konzol ablakai alapértelmezés szerint 80 karakter szélesek a telepítéskor.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
PSObject
A parancsmaghoz bármilyen objektumot csövezhet.
Kimenetek
String
Ez a parancsmag a bemeneti objektumból létrehozott sztringet adja vissza.
Jegyzetek
A Out igét tartalmazó parancsmagok nem formáznak objektumokat. A Out parancsmagok objektumokat küldenek a megadott megjelenítési célhely formátumkezelőjének.
A PowerShell 7.2-es verzióval szabályozható az ANSI-feloldósorozatok renderelése. A Out-String átadott ANSI-dekorált kimenet a $PSStyle.OutputRendering tulajdonság beállítása alapján módosítható. További információkért lásd: about_ANSI_Terminals.