Aracılığıyla paylaş


Out-String

Giriş nesnelerini dize olarak verir.

Sözdizimi

NoNewLineFormatting EnterprisePublishing

Out-String
    [-Width <Int32>]
    [-NoNewline]
    [-InputObject <PSObject>]
    [<CommonParameters>]

StreamFormatting

Out-String
    [-Stream]
    [-Width <Int32>]
    [-InputObject <PSObject>]
    [<CommonParameters>]

Description

Out-String cmdlet'i giriş nesnelerini dizelere dönüştürür. Varsayılan olarak, Out-String dizeleri birikerek tek bir dize olarak döndürür, ancak her seferinde bir satır döndürmeye veya dize dizisi oluşturmaya yönlendirmek için Out-String parametresini kullanabilirsiniz. Bu cmdlet, nesne işleme daha az kullanışlı olduğunda geleneksel kabuklarda yaptığınız gibi dize çıkışını aramanızı ve işlemenizi sağlar.

PowerShell, işlem hattında oss kullanmak için kısa yol olarak Out-String -Stream çağıran Out-String işlevini de ekler.

Örnekler

Örnek 1: Geçerli kültürü alma ve verileri dizelere dönüştürme

Bu örnek geçerli kullanıcının bölgesel ayarlarını alır ve nesne verilerini dizelere dönüştürür.

$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

$C değişkeni selected.System.Globalization.CultureInfo nesnesini depolar. nesnesi, Get-CultureSelect-Objectiçin işlem hattından çıkış gönderme işleminin sonucudur. Özelliği parametresi, nesnede tüm özelliklerin bulunacağını belirtmek için yıldız işareti (*) joker karakteri kullanır.

Out-String, değişkeninde depolanan CultureInfo nesnesini belirtmek için $C parametresini kullanır. $C içindeki nesneler bir dizeye dönüştürülür.

Uyarı

Out-String dizisini görüntülemek için çıkışı bir değişkene depolayın ve öğeleri görüntülemek için bir dizi dizini kullanın. Dizi dizini hakkında daha fazla bilgi için bkz. about_Arrays.

$str = Out-String -InputObject $C -Width 100

Örnek 2: Nesnelerle çalışma

Bu örnek, nesnelerle çalışma ile dizelerle çalışma arasındaki farkı gösterir. komutu, gcm metnini içeren Get-Commanddiğer adını görüntüler.

Get-Alias | Out-String -Stream | Select-String -Pattern "gcm"
Alias           gcm -> Get-Command

Get-Alias her diğer ad için bir tane olan System.Management.Automation.AliasInfo nesnelerini alır ve nesneleri işlem hattına gönderir. Out-String, tüm nesneleri tek bir dizede birleştirmek yerine her nesneyi bir dizeye dönüştürmek için Stream parametresini kullanır. System.String nesneleri işlem hattına gönderilir ve Select-String gcm metin eşleşmelerini bulmak için Desen parametresini kullanır.

Uyarı

Stream parametresini atlarsanız, Select-String döndürdüğü tek dizede gcm Out-String metni bulduğu için komut tüm diğer adları görüntüler.

Örnek 3: Kesilmesini önlemek için Width parametresini kullanın

çoğu Out-String çıktısı bir sonraki satıra kaydırılırken, Out-String'a geçirilmeden önce çıktının biçimlendirme sistemi tarafından kesildiği senaryolar vardır. Width parametresini kullanarak kesilmesini önleyebilirsiniz.

PS> @{TestKey = ('x' * 200)} | Out-String
Name                           Value
----                           -----
TestKey                        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...

PS> @{TestKey = ('x' * 200)} | Out-String -Width 250

Name                           Value
----                           -----
TestKey                        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Parametreler

-InputObject

Bir dizeye yazılacak nesneleri belirtir. Nesneleri içeren bir değişken girin veya nesneleri alan bir komut veya ifade yazın.

Parametre özellikleri

Tür:PSObject
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:True
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-NoNewline

PowerShell biçimlendiricisi tarafından oluşturulan çıkıştan tüm yeni çizgileri kaldırır. Dize nesnelerinin parçası olan yeni satırlar korunur.

Bu parametre PowerShell 6.0'da kullanıma sunulmuştur.

Parametre özellikleri

Tür:SwitchParameter
Default value:False
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

NoNewLineFormatting
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Stream

Varsayılan olarak, Out-String boş üst bilgiler veya sondaki yeni satırlar dahil olmak üzere konsolda gördüğünüz gibi biçimlendirilmiş tek bir dize çıkışı verir. Stream parametresi, Out-String her satırı birer birer çıktı olarak vermesine olanak tanır. Bunun tek istisnası çok satırlı dizelerdir. Bu durumda, Out-String yine de dizenin çıkışını tek, çok satırlı bir dize olarak verir.

Parametre özellikleri

Tür:SwitchParameter
Default value:False
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

StreamFormatting
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Width

Çıktının her satırındaki karakter sayısını belirtir. Diğer tüm karakterler, kullanılan biçimlendirici cmdlet'ine bağlı olarak bir sonraki satıra kaydırılır veya kesilir. Width parametresi yalnızca biçimlendirilmiş nesnelere uygulanır. Bu parametreyi atlarsanız, genişlik konak programının özelliklerine göre belirlenir. Terminal (konsol) pencerelerinde, varsayılan değer olarak geçerli pencere genişliği kullanılır. PowerShell konsol pencereleri, yüklemede varsayılan olarak 80 karakter genişliğindedir.

Parametre özellikleri

Tür:Int32
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

CommonParameters

Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.

Girişler

PSObject

Herhangi bir nesneyi bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

String

Bu cmdlet, giriş nesnesinden oluşturduğu dizeyi döndürür.

Notlar

Out fiilini içeren cmdlet'ler nesneleri biçimlendirmez. Out cmdlet'leri, nesneleri belirtilen görüntüleme hedefi için biçimlendiriciye gönderir.

PowerShell 7.2, ANSI kaçış dizilerinin nasıl işleneceğini denetleme özelliği ekledi. Out-String geçirilen ANSI ile dekore edilmiş çıkış, $PSStyle.OutputRendering özelliğinin ayarına göre değiştirilebilir. Daha fazla bilgi için bkz. about_ANSI_Terminals.