Join-String
A folyamat objektumait egyetlen sztringbe egyesíti.
Syntax
Default (Alapértelmezett)
Join-String
[[-Property] <PSPropertyExpression>]
[[-Separator] <String>]
[-OutputPrefix <String>]
[-OutputSuffix <String>]
[-UseCulture]
[-InputObject <PSObject[]>]
[<CommonParameters>]
SingleQuote
Join-String
[[-Property] <PSPropertyExpression>]
[[-Separator] <String>]
[-OutputPrefix <String>]
[-OutputSuffix <String>]
[-SingleQuote]
[-UseCulture]
[-InputObject <PSObject[]>]
[<CommonParameters>]
DoubleQuote
Join-String
[[-Property] <PSPropertyExpression>]
[[-Separator] <String>]
[-OutputPrefix <String>]
[-OutputSuffix <String>]
[-DoubleQuote]
[-UseCulture]
[-InputObject <PSObject[]>]
[<CommonParameters>]
Format
Join-String
[[-Property] <PSPropertyExpression>]
[[-Separator] <String>]
[-OutputPrefix <String>]
[-OutputSuffix <String>]
[-FormatString <String>]
[-UseCulture]
[-InputObject <PSObject[]>]
[<CommonParameters>]
Description
A Join-String parancsmag egyetlen sztringbe illeszti vagy egyesíti a folyamatobjektumok szövegét.
Ha nincsenek megadva paraméterek, a folyamatobjektumok sztringgé alakulnak, és csatlakoznak az alapértelmezett elválasztó $OFS.
Megjegyzés:
Ha beállítja $OFS értékét a rendszer a tömbök összekapcsolására használja, amikor sztringekké konvertálják őket, amíg a változó vissza nem áll $null. Mivel a $OFS használata máshol nem kívánt hatással lehet a kódban, a legjobb, ha inkább a Elválasztó paramétert használja.
A tulajdonságnév megadásával a tulajdonság értéke sztringgé alakul, és sztringgé alakul.
Tulajdonságnév helyett szkriptblokk használható. A szkriptblokk eredménye sztringgé lesz konvertálva, mielőtt hozzá lett volna fűzve az eredmény létrehozásához. Kombinálhatja egy objektum tulajdonságának szövegét vagy a sztringgé konvertált objektum eredményét.
Ez a parancsmag a PowerShell 6.2-ben lett bevezetve.
Példák
1. példa: Könyvtárnevek csatlakoztatása
Ez a példa összekapcsolja a címtárneveket, dupla idézőjelekbe burkolja a kimenetet, és vesszővel és szóközzel (, ) elválasztja a címtárneveket. A kimenet egy sztringobjektum.
Get-ChildItem -Directory C:\ | Join-String -Property Name -DoubleQuote -Separator ', '
"PerfLogs", "Program Files", "Program Files (x86)", "Users", "Windows"
Get-ChildItem a Directory paraméter használatával lekéri a C:\ meghajtó összes könyvtárnevét.
Az objektumokat le fogják küldeni a csővezetéken a Join-String-ba. A tulajdonság paraméter adja meg a címtárneveket. A DoubleQuote paraméter dupla idézőjelekkel burkolja a címtárneveket.
A elválasztó paraméter vesszővel és szóközzel (, ) választja el a címtárneveket.
A Get-ChildItem objektumok a System.IO.DirectoryInfo , és Join-String átalakítja az objektumokat System.String.
2. példa: A címtárnevek összekapcsolásához használjon tulajdonságrészt
Ez a példa egy alstring metódust használ a címtárnevek első négy betűjének lekéréséhez, a kimenetet egy idézőjelbe burkolja, és pontosvesszővel (;) választja el a címtárneveket.
Get-ChildItem -Directory C:\ | Join-String -Property {$_.Name.SubString(0,4)} -SingleQuote -Separator ';'
'Perf';'Prog';'Prog';'User';'Wind'
Get-ChildItem a Directory paraméter használatával lekéri a C:\ meghajtó összes könyvtárnevét.
Az objektumokat le fogják küldeni a csővezetéken a Join-String-ba.
A tulajdonság paraméterszkriptblokk automatikus változót ($_) használ az egyes objektumok Név tulajdonság részstringjének megadásához. Az alsztring minden könyvtárnév első négy betűje lesz. Az alsztring határozza meg a karakter kezdő és záró pozícióit. A SingleQuote paraméter egy idézőjelekkel burkolja a címtárneveket. A elválasztó paraméter pontosvesszővel (;) választja el a címtárneveket.
Az automatikus változókkal és részszúrásokkal kapcsolatos további információkért lásd: about_Automatic_Variables és substring.
3. példa: Illesztés kimenetének megjelenítése külön sorban
Ez a példa a szolgáltatásneveket az egyes szolgáltatásokhoz egy külön sorba illeszti, és behúzza egy lapra.
Get-Service -Name se* | Join-String -Property Name -Separator "`r`n`t" -OutputPrefix "Services:`n`t"
Services:
seclogon
SecurityHealthService
SEMgrSvc
SENS
Sense
SensorDataService
SensorService
SensrSvc
SessionEnv
Get-Service a Name paramétert használja a se*kezdődő szolgáltatások megadásához. A csillag (*) bármely karakter helyettesítő karaktere.
A rendszer elküldi az objektumokat a folyamaton a Join-String, amely a Tulajdonság paramétert használja a szolgáltatásnevek megadásához. A Elválasztó paraméter három speciális karaktert határoz meg, amelyek a kocsivissza (`r), az új vonal (`n) és a tab (`t) karaktert jelölik. A OutputPrefix beszúr egy címkét Services: egy új sortal és fülkel az első kimeneti sor elé.
További információ a speciális karakterekről: about_Special_Characters.
4. példa: Osztálydefiníció létrehozása objektumból
Ez a példa egy PowerShell-osztálydefiníciót hoz létre egy meglévő objektum sablonként való használatával.
Ez a kódminta splatting használatával csökkenti a vonal hosszát és javítja az olvashatóságot. További információkért tekintse meg a következőket: about_Splatting.
$obj = [pscustomobject] @{Name = "Joe"; Age = 42}
$parms = @{
Property = "Name"
FormatString = ' ${0}'
OutputPrefix = "class {`n"
OutputSuffix = "`n}`n"
Separator = "`n"
}
$obj.psobject.Properties | Join-String @parms
class {
$Name
$Age
}
Paraméterek
-DoubleQuote
Az egyes folyamatobjektumok sztringértékét dupla idézőjelek közé csomagolja.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
DoubleQuote
| 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 |
-FormatString
Egy formázási sztringet ad meg, amely meghatározza, hogy az egyes folyamatobjektumok hogyan legyenek formázva a csatlakozás előtt. Az aktuális objektumot a {0} helyőrző használatával jelölheti. Ha meg kell tartania a kapcsos zárójeleket ({}) a formázott sztringben, a kapcsos zárójelek ({{ és }}) megduplázásával menekülhet meg tőlük.
További információ: String.Format metódus és Összetett formázás.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
Format
| 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 |
-InputObject
Megadja az illesztendő szöveget. Írjon be egy olyan változót, amely tartalmazza a szöveget, vagy írjon be egy parancsot vagy kifejezést, amely lekéri az objektumokat, hogy sztringekké csatlakozzanak.
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 |
-OutputPrefix
A kimeneti sztring elé beszúrt szöveg. A sztring tartalmazhat speciális karaktereket, például kocsivissza (`r), newline (`n) és tab (`t).
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | operátor |
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 |
-OutputSuffix
A kimeneti sztringhez hozzáfűzött szöveg. A sztring tartalmazhat speciális karaktereket, például kocsivissza (`r), newline (`n) és tab (`t).
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | OS |
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 |
-Property
A szöveggé konvertálandó tulajdonság vagy tulajdonságkifejezés neve.
Paramétertulajdonságok
| Típus: | PSPropertyExpression |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | 0 |
| 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 |
-Separator
Az egyes folyamatobjektumok szövege közé beszúrt szöveg vagy karakterek, például vessző vagy pontosvessző.
Alapértelmezés szerint a folyamatobjektumok elválasztó nélkül csatlakoznak. Ha a Kimeneti mező elválasztó beállítási változó ($OFS) be van állítva, a rendszer ezt az értéket használja, kivéve, ha ez a paraméter meg van adva.
Megjegyzés:
Ha beállítja $OFS értékét a rendszer a tömbök összekapcsolására használja, amikor sztringekké konvertálják őket, amíg a változó vissza nem áll $null. Mivel a $OFS használata máshol nem kívánt hatással lehet a kódban, a legjobb, ha inkább a Elválasztó paramétert használja.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | 1 |
| 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 |
-SingleQuote
Az egyes folyamatobjektumok sztringértékét egyetlen idézőjelbe csomagolja.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
SingleQuote
| 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 |
-UseCulture
Az aktuális kultúra listaelválasztót használja elválasztó elemként. Egy kultúra listaelválasztójának megkereséséhez használja a következő parancsot: (Get-Culture).TextInfo.ListSeparator.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| 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.