Out-String
Menghasilkan objek input sebagai string.
Sintaks
Out-String
[-Stream]
[-Width <Int32>]
[-InputObject <PSObject>]
[<CommonParameters>]
Deskripsi
Out-String
Cmdlet mengonversi objek input menjadi string. Secara default, Out-String
mengakumulasi string dan mengembalikannya sebagai string tunggal, tetapi Anda dapat menggunakan parameter Stream untuk mengarahkan Out-String
untuk mengembalikan satu baris sekaligus atau membuat array string. Cmdlet ini memungkinkan Anda mencari dan memanipulasi output string seperti yang Anda lakukan di cangkang tradisional ketika manipulasi objek kurang nyaman.
PowerShell juga menambahkan OSS
fungsi yang memanggil Out-String -Stream
sebagai cara singkat untuk digunakan Out-String
dalam alur.
Contoh
Contoh 1: Dapatkan budaya saat ini dan konversi data menjadi string
Contoh ini mendapatkan pengaturan regional untuk pengguna saat ini dan mengonversi data objek menjadi string.
$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
Variabel $C
menyimpan objek Selected.System.Globalization.CultureInfo . Objek adalah hasil dari Get-Culture
pengiriman output ke alur ke Select-Object
. Parameter Properti menggunakan kartubebas tanda bintang (*
) untuk menentukan semua properti yang terkandung dalam objek.
Out-String
menggunakan parameter InputObject untuk menentukan objek CultureInfo yang $C
disimpan dalam variabel. Objek di dikonversi $C
menjadi string.
Catatan
Untuk melihat Out-String
array, simpan output ke variabel dan gunakan indeks array untuk melihat elemen. Untuk informasi selengkapnya tentang indeks array, lihat about_Arrays.
$str = Out-String -InputObject $C -Width 100
Contoh 2: Bekerja dengan objek
Contoh ini menunjukkan perbedaan antara bekerja dengan objek dan bekerja dengan string. Perintah menampilkan alias yang menyertakan teks gcm, alias untuk Get-Command
.
Get-Alias | Out-String -Stream | Select-String -Pattern "gcm"
Alias gcm -> Get-Command
Get-Alias
mendapatkan objek System.Management.Automation.AliasInfo, satu untuk setiap alias, dan mengirim objek ke bawah alur. Out-String
menggunakan parameter Stream untuk mengonversi setiap objek menjadi string daripada menggabungkan semua objek menjadi satu string.
Objek System.String dikirimkan ke alur dan Select-String
menggunakan parameter Pola untuk menemukan kecocokan untuk teks gcm.
Catatan
Jika Anda menghilangkan parameter Stream , perintah menampilkan semua alias karena Select-String
menemukan teks gcm dalam string tunggal yang Out-String
kembali.
Contoh 3: Gunakan parameter Lebar untuk mencegah pemotongan.
Sementara sebagian besar output dari Out-String
dibungkus ke baris berikutnya, ada skenario di mana output dipotong oleh sistem pemformatan sebelum diteruskan ke Out-String
. Anda dapat menghindari pemotongan menggunakan parameter Lebar .
PS> @{TestKey = ('x' * 200)} | Out-String
Name Value
---- -----
TestKey xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
PS> @{TestKey = ('x' * 200)} | Out-String -Width 250
Name Value
---- -----
TestKey xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Parameter
-InputObject
Menentukan objek yang akan ditulis ke string. Masukkan variabel yang berisi objek, atau ketik perintah atau ekspresi yang mendapatkan objek.
Jenis: | PSObject |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Stream
Secara default, Out-String
menghasilkan satu string yang diformat seperti yang Akan Anda lihat di konsol termasuk header kosong atau baris baru berikutnya. Parameter Stream memungkinkan Out-String
untuk menghasilkan setiap baris satu per satu. Satu-satunya pengecualian untuk ini adalah string multibaris. Dalam hal ini, Out-String
masih akan menghasilkan string sebagai string multibaris tunggal.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Width
Menentukan jumlah karakter di setiap baris output. Setiap karakter tambahan dibungkus ke baris berikutnya atau dipotong tergantung pada cmdlet formatter yang digunakan. Parameter Lebar hanya berlaku untuk objek yang sedang diformat. Jika Anda menghilangkan parameter ini, lebar ditentukan oleh karakteristik program host. Di jendela terminal (konsol), lebar jendela saat ini digunakan sebagai nilai default. Jendela konsol PowerShell default ke lebar 80 karakter pada penginstalan.
Jenis: | Int32 |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
Input
Anda dapat menyalurkan objek apa pun ke cmdlet ini.
Output
Cmdlet ini mengembalikan string yang dibuatnya dari objek input.
Catatan
Cmdlet yang berisi Out
kata kerja tidak memformat objek. Out
Cmdlet mengirim objek ke pemformat untuk tujuan tampilan yang ditentukan.