Powershell Yazma Ana Bilgisayarı | Powershell Yazma Sunucusu İçin Kısa Bir Kılavuz


Powershell Yazma Ana Bilgisayarına Giriş

Yazma ana bilgisayarı cmdlet'i, çıktıyı PowerShell konsolunun kendisinde görüntülemek için kullanılır. Görüntülenen çıktıyı çeşitli yazı tipi renkleri ve arka plan renkleri ile özelleştirebilirsiniz. Nesne ardışık düzene iletildiğinde Write-Host onu bir nesne olarak almaz, onu bir ad parametresi veya değeri olarak değerlendirir ve yalnızca çıktıyı konsolda görüntüler.

Sözdizimi

Write-Host
[[-Object] <Object>]
[-NoNewline]
[-Separator <Object>]
[-ForegroundColor <ConsoleColor>]
[-BackgroundColor <ConsoleColor>]
[<CommonParameters>]

Parametreler

  • -Object:Konsol çıktısında görüntülemek için kullanılır. Genellikle nesne bir dize nesnesi, değişken veya operasyonel değerler olabilir.
  • -NoNewLine:Bu parametre ile çıktı yeni satırda değil aynı satırda devam ettirilecektir.
  • -Ayırıcı:Parantez içindeki kelimeleri belirli bir karakter veya kelimeyle ayırabilirsiniz. Daha sonra örneklerde bir açıklama verilmiştir.
  • -ForegroundColor: Çıktıyı görüntülerken metnin rengini ayarlayabilirsiniz. Varsayılan renk yoktur.

Renkler aşağıdaki gibidir:

-Black

-DarkBlue

-DarkGreen

-DarkCyan

-DarkRed

-DarkMagenta

-Darkyellow

-Gray

-DarkGray

-Blue

-Green

-Cyan

-Red

-Magenta

-Yellow

-White

  • -Arka Plan Rengi: Bu parametre metnin arka plan rengini belirtir. Varsayılan renk yoktur. Renkler aşağıdaki gibidir.
-Black

-DarkBlue

-DarkGreen

-DarkCyan

-DarkRed

-DarkMagenta

-DarkYellow

-Gray

-DarkGray

-Blue

-Green

-Cyan

-Red

-Magenta

-Yellow

-White

  • : Bu cmdlet ortak parametreleri destekler.Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable ve OutVariable.

Powershell Yazma Ana Bilgisayarı Örnekleri

Aşağıda Powershell yazma ana bilgisayarının bazı örnekleri verilmiştir:

Örnek 1: Nesne ile Yazma Ana Bilgisayarı

Write-Host "This is a Simple String"

Çıktı:

Benzer şekilde, aynı dizeyi Pipeline'a geçirerek de yazabilirsiniz; çıktı yukarıdakiyle aynı olacaktır.

"This is a simple string" | Write-Host

Şimdi birden fazla nesneyi birlikte geçirdiğimizi varsayalım. Yazma sunucusuna Get-Service'i ele alalım.

Get-Service | Select -First 10 | Write-Host

Çıktı:

Ancak Yazma Çıkışını kullandığınızda

Get-Service | Select -First 10 | Write-Output

Çıktı:

Bu nedenle, Write-Host cmdlet'i çıktının tamamını tek bir nesne olarak değil, tek bir değer veya dize olarak işleyemediğinden, Write-Host, Get-Service çıktısının tamamını değil, yalnızca hizmetin adını yazar. Yazma Çıkışı Parametresini kullanarak tüm varsayılan değerleri görüntüleyebilirsiniz.

Örnek 2: -NoNewLine ile Write-Host

Varsayılan olarak, write-host komutu sonda yürütüldüğünde yeni satır parametresi de yürütülür, böylece ne yazarsanız yazın çıktı bir sonraki satırda olur, ancak -NoNewLine parametresi kullanıldığında çıktı birleştirilir.

Write-Host "This is first line..." -NoNewline
Write-Host "There is no space"

Çıktı:

Örnek 3: -Ayırıcıyla Yazma-Ana Bilgisayarı

Ayırıcı parametresi ile her değerin arasına belirli bir karakter veya kelime koyabilirsiniz. Örneğin,

Write-Host (1,2,3,4,5) -Separator "->"

Çıktı:

Write-Host ("This","is","string") -Separator ","

Değerleri belirli bir kelimeyle de ayırabilirsiniz.

Write-Host ("This","is","string") -Separator " hi "

Ayırıcı tek bir değer veya dizeyle çalışmaz.

Write-Host "This is string" -Separator "->"

Örnek 4: -Foregroundcolor ile Yazma Ana Bilgisayarı

Bazen çıktı metnini belirli bir renkle görüntülemeniz gerekir. Metni görüntülemek için farklı renkler kullanabilirsiniz.

Write-Host "This is magenta foreground text" -ForegroundColor Magenta

Çıktı:

Write-Host "This is Dark cyan foreground text" -ForegroundColor DarkCyan

Örnek 5: -Backgroundcolor ile Yazma-Ana Bilgisayarı

Bu parametre ile metnin arka plan rengini değiştirebilirsiniz.

Write-Host "This is white text with Dark Red background"-
BackgroundColor DarkRed

Write-Host "Magenta text with green background" -ForegroundColor Magenta -
BackgroundColor green

Çözüm

Yazma sunucusu çıktıyı yakalayamaz veya saklayamaz; yalnızca çıktıyı görüntüler. Çıktıyı yakalamak için yazma-çıktı cmdlet'ini kullanmanız gerekir ancak ikinci komutla farklı renkleri kullanamazsınız.

Örneğin aşağıdaki komutta çıktı test.txt dosyasında saklanmayacak, bunun yerine PowerShell konsolunda görüntülenecektir.

Write-Host "Simple text" > c:\test.txt

Ancak yazma çıktısını kullandığınızda bir metin dosyasında saklayabilirsiniz.

Write-Output "Simple text" > c:\test.txt

İlgili makaleler