Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kısa açıklama
Uzak komutların çıkışını yorumlamayı ve biçimlendirmeyi açıklar.
Uzun açıklama
Uzak bir bilgisayarda çalıştırılan bir komutun çıktısı, aynı komutun yerel bilgisayarda çalıştırılan çıktısı gibi görünebilir, ancak bazı önemli farklılıklar vardır.
Bu konuda, uzak bilgisayarlarda çalıştırılacak komutların çıkışını yorumlama, biçimlendirme ve görüntüleme işlemleri açıklanmaktadır.
Bilgisayar adını görüntüleme
Uzak bir bilgisayarda komut çalıştırmak için Invoke-Command cmdlet'ini kullandığınızda, komut verileri oluşturan bilgisayarın adını içeren bir nesne döndürür.
PSComputerName özelliği uzak bilgisayar adını içerir.
Çoğu komut için pscomputerName varsayılan olarak görüntülenir. Örneğin, aşağıdaki komut iki uzak bilgisayarda bir Get-Culture komutu çalıştırır: Server01 ve Server02. Aşağıda gösterilen çıkış, komutun çalıştırıldığı uzak bilgisayarların adlarını içerir.
Invoke-Command -ScriptBlock {Get-Culture} -ComputerName Server01, Server02
LCID Name DisplayName PSComputerName
---- ---- ----------- --------------
1033 en-US English (United States) Server01
1033 es-AR Spanish (Argentina) Server02
PSComputerName özelliğini gizlemek için Invoke-CommandHideComputerName parametresini kullanabilirsiniz. Bu parametre, yalnızca bir uzak bilgisayardan veri toplayan komutlar için tasarlanmıştır.
Aşağıdaki komut, Server01 uzak bilgisayarında bir Get-Culture komutu çalıştırır.
PSComputerName özelliğini ve ilgili özellikleri gizlemek için HideComputerName parametresini kullanır.
$invokeCommandSplat = @{
ScriptBlock = {Get-Culture}
ComputerName = 'Server01'
HideComputerName = $true
}
Invoke-Command @invokeCommandSplat
LCID Name DisplayName
---- ---- -----------
1033 en-US English (United States)
Varsayılan olarak görüntülenmediyse PSComputerName özelliğini de görüntüleyebilirsiniz.
Örneğin, aşağıdaki komutlar uzak Format-Table komutunun çıkışına PSComputerName özelliğini eklemek için Get-Date cmdlet'ini kullanır.
$invokeCommandSplat = @{
ScriptBlock = {Get-Date}
ComputerName = 'Server01', 'Server02'
}
Invoke-Command @invokeCommandSplat |
Format-Table DateTime, PSComputerName -AutoSize
DateTime PSComputerName
-------- --------------
Monday, July 21, 2008 7:16:58 PM Server01
Monday, July 21, 2008 7:16:58 PM Server02
Seri durumdan çıkarılmış nesneler
Çıkış oluşturan uzak komutları çalıştırdığınızda, komut çıkışı ağ üzerinden yerel bilgisayara geri iletilir.
Canlı .NET nesneleri ağ üzerinden aktarılabildiğinden, canlı nesneler serileştirilir veya nesnenin ve özelliklerinin XML gösterimlerine dönüştürülür. PowerShell, serileştirilmiş nesneyi ağ üzerinden iletir.
Yerel bilgisayarda, PowerShell serileştirilmiş nesneyi alır ve serileştirilmiş nesneyi standart bir .NET nesnesine dönüştürerek seri durumdan.
Ancak seri durumdan çıkarılmış nesne canlı bir nesne değildir. Serileştirme sırasında nesnenin anlık görüntüsü. Seri durumdan çıkarılmış nesne özellikleri içerir ancak yöntem içermiyor. PowerShell'de bu nesneleri işlem hatlarına geçirme, seçili özellikleri görüntüleme ve biçimlendirme dahil olmak üzere kullanabilir ve yönetebilirsiniz.
Seri durumdan çıkarılmış nesnelerin çoğu, Types.ps1xml veya Format.ps1xml dosyalarındaki girdiler tarafından görüntülenmek üzere otomatik olarak biçimlendirilir. Ancak, yerel bilgisayarda uzak bilgisayarda oluşturulan tüm nesneler için biçimlendirme dosyaları olmayabilir. Nesneler biçimlendirilmediğinde, her nesnenin tüm özellikleri bir akış listesinde konsolunda görünür.
Nesneler otomatik olarak biçimlendirilmediğinde, seçili özellikleri biçimlendirmek ve görüntülemek için Format-Table veya Format-Listgibi biçimlendirme cmdlet'lerini kullanabilirsiniz. İsterseniz, Out-GridView cmdlet'ini kullanarak tablodaki nesneleri görüntüleyebilirsiniz.
Yerel bilgisayarınızda bulunmayan cmdlet'leri kullanan uzak bir bilgisayarda bir komut çalıştırdığınızda, bilgisayarınızda bu nesne türleri için biçimlendirme dosyaları yoksa, komutun döndürdüğü nesneler beklendiği gibi biçimlendirilmeyebilir. Başka bir bilgisayardan biçimlendirme verileri almak için Get-FormatData ve Export-FormatData cmdlet'lerini kullanırsınız.
DirectoryInfo nesneleri ve GUID'leri gibi bazı nesne türleri alındığında canlı nesnelere geri dönüştürülür. Bu nesnelerin özel bir işleme veya biçimlendirmeye ihtiyacı yoktur.
Sonuçları sıralama
Cmdlet'lerin ComputerName parametresindeki bilgisayar adlarının sırası, PowerShell'in uzak bilgisayarlara bağlanma sırasını belirler. Ancak sonuçlar, verilerin uzak bilgisayarlardan alınma sırasına göre görüntülenir.
sonuçları Sort-Objectsıralamak için cmdlet'ini kullanabilirsiniz. Nesnenin başka bir özelliğine sahip olduğunuzda, farklı bilgisayarlardan gelen sonuçlar çıkışta aralara eklenir
Ayrıca bakınız
- about_Remote
- about_Remote_Variables
- Invoke-Command
- Get-EventLog
- Out-GridView
- Nesne Seçme
- Get-Process
- Get-Service
- Biçim-Tablo
- Get-WmiObject
PowerShell