Write-Information
PowerShell'in bir komut için bilgi akışı verilerini nasıl işlediğini belirtir.
Syntax
Default (Varsayılan)
Write-Information
[-MessageData] <Object>
[[-Tags] <String[]>]
[<CommonParameters>]
Description
Write-Information cmdlet'i, PowerShell'in bir komut için bilgi akışı verilerini nasıl işlediğini belirtir.
Windows PowerShell 5.0, yeni, yapılandırılmış bir bilgi akışı sunar. Bu akışı, bir komut dosyası ile onu çağıranlar veya ana uygulama arasında yapılandırılmış veriler iletmek için kullanabilirsiniz.
Write-Information akışa bilgilendirıcı bir ileti eklemenize ve PowerShell'in bir komut için bilgi akışı verilerini nasıl işleyeceğini belirtmenize olanak tanır. Bilgi akışları, PowerShell.Streams, işler ve zamanlanmış görevler için de işlev görür.
Uyarı
Bilgi akışı, iletilerine "[Stream Name]:" ön eki eklemenin standart kuralına uymaz. Bu, kısalık ve görsel temizlik amacıyla amaçlandı.
$InformationPreference tercih değişkeninin değeri, Write-Information'e sağladığınız mesajın, bir betiğin işlemi sırasında beklenen noktada görüntülenip görüntülenmeyeceğini belirler. Bu değişkenin varsayılan değeri SilentlyContinueolduğundan, bilgilendirme iletileri varsayılan olarak gösterilmez.
$InformationPreferencedeğerini değiştirmek istemiyorsanız, InformationAction ortak parametresini komutuna ekleyerek değerini geçersiz kılabilirsiniz. Daha fazla bilgi için bkz. about_Preference_Variables ve about_CommonParameters.
Uyarı
Windows PowerShell 5.0'dan başlayarak, Write-HostWrite-Information için bir sarmalayıcıdır. Bu, bilgi akışına çıktı yaymak için Write-Host kullanmanıza olanak tanır. Bu, geriye dönük uyumluluğu korurken
Write-Information , PowerShell 5.x'te de desteklenen bir iş akışı etkinliğidir.
Örnekler
Örnek 1: Get- results için bilgi yazma
Bu örnekte, 'p' ile başlayan Bir Ad değerine sahip tüm özellikleri bulmak için Get-WindowsFeature komutunu çalıştırdıktan sonra "Özelliklerinizi aldım!" şeklinde bir bilgilendirme iletisi gösterirsiniz.
$InformationPreference değişkeni hala varsayılan olarak ayarlandığından SilentlyContinue, InformationAction değerini geçersiz kılmak için $InformationPreference parametresini ekler ve iletiyi gösterirsiniz.
InformationAction değeri Devam'tır; başka bir deyişle iletiniz gösterilir, ancak betik veya komut henüz tamamlanmamışsa devam eder.
Get-WindowsFeature -Name p*
Write-Information -MessageData "Got your features!" -InformationAction Continue
Display Name Name Install State
------------ ---- -------------
[ ] Print and Document Services Print-Services Available
[ ] Print Server Print-Server Available
[ ] Distributed Scan Server Print-Scan-Server Available
[ ] Internet Printing Print-Internet Available
[ ] LPD Service Print-LPD-Service Available
[ ] Peer Name Resolution Protocol PNRP Available
[X] Windows PowerShell PowerShellRoot Installed
[X] Windows PowerShell 5.0 PowerShell Installed
[ ] Windows PowerShell 2.0 Engine PowerShell-V2 Removed
[X] Windows PowerShell ISE PowerShell-ISE Installed
Got your features!
Örnek 2: Bilgi yazma ve etiketleme
Bu örnekte, kullanıcılara geçerli komutu çalıştırmaları tamamlandıktan sonra başka bir komut çalıştırmaları gerektiğini bildirmek için Write-Information kullanırsınız. Örnek, bilgilendirme iletisine Instructions etiketini ekler. Bu komutu çalıştırdıktan sonra bilgi akışında Yönergeler etiketli iletiler ararsanız, burada belirtilen ileti sonuçlar arasında yer alır.
$message = "To filter your results for PowerShell, pipe your results to the Where-Object cmdlet."
Get-WindowsFeature -Name p*
Write-Information -MessageData $message -Tags "Instructions" -InformationAction Continue
Display Name Name Install State
------------ ---- -------------
[ ] Print and Document Services Print-Services Available
[ ] Print Server Print-Server Available
[ ] Distributed Scan Server Print-Scan-Server Available
[ ] Internet Printing Print-Internet Available
[ ] LPD Service Print-LPD-Service Available
[ ] Peer Name Resolution Protocol PNRP Available
[X] Windows PowerShell PowerShellRoot Installed
[X] Windows PowerShell 5.0 PowerShell Installed
[ ] Windows PowerShell 2.0 Engine PowerShell-V2 Removed
[X] Windows PowerShell ISE PowerShell-ISE Installed
To filter your results for PowerShell, pipe your results to the Where-Object cmdlet.
Örnek 3: Bir dosyaya bilgi yazma
Bu örnekte, kodu kullanarak işlevdeki bilgi akışını a'ya Info.txt yönlendirirsiniz.6> Dosyayı açtığınızda Info.txt , "İşte başlıyorsunuz" metnini görürsünüz.
function Test-Info
{
Get-Process P*
Write-Information "Here you go"
}
Test-Info 6> Info.txt
Örnek 4: Nesneyi bilgi yazma işlemi için geçirme
Bu örnekte, birden çok işlem hattından geçen Write-Information nesne çıkışından en yüksek 10 CPU kullanım işlemini yazmak için Get-Process kullanabilirsiniz.
Get-Process | Sort-Object CPU -Descending |
Select-Object Id, ProcessName, CPU -First 10 |
Write-Information -InformationAction Continue
@{Id=12692; ProcessName=chrome; CPU=39431.296875}
@{Id=21292; ProcessName=OUTLOOK; CPU=23991.875}
@{Id=10548; ProcessName=CefSharp.BrowserSubprocess; CPU=20546.203125}
@{Id=312848; ProcessName=Taskmgr; CPU=13173.1875}
@{Id=10848; ProcessName=SnapClient; CPU=7014.265625}
@{Id=9760; ProcessName=Receiver; CPU=6792.359375}
@{Id=12040; ProcessName=Teams; CPU=5605.578125}
@{Id=498388; ProcessName=chrome; CPU=3062.453125}
@{Id=6900; ProcessName=chrome; CPU=2546.9375}
@{Id=9044; ProcessName=explorer; CPU=2358.765625}
Parametreler
-MessageData
Kullanıcılara betik veya komut çalıştırırken görüntülemek istediğiniz bilgilendirici bir ileti belirtir. En iyi sonuçlar için, bilgi iletisini tırnak içine alın.
Parametre özellikleri
| Tür: | Object |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | Msg, Mesaj |
Parametre kümeleri
(All)
| Position: | 0 |
| Zorunlu: | True |
| İş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 |
-Tags
Write-Informationile bilgi akışına eklediğiniz iletileri sıralamak ve filtrelemek için kullanabileceğiniz basit bir dize belirtir. Bu parametre, New-ModuleManifest parametresine benzer şekilde çalışır.
Parametre özellikleri
| Tür: | String[] |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | 1 |
| 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
Object
Write-Information Bilgi akışına geçmek için borulu nesneleri kabul eder.