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 cmdlet'ini kullandığınızda Invoke-Command , 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.
Birçok komut için PSComputerName varsayılan olarak görüntülenir. Örneğin, aşağıdaki komut server01 ve Server02 adlı iki uzak bilgisayarda bir Get-Culture komut çalıştırır. 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 hideComputerName parametresini Invoke-Command 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 komut ç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ülenmiyorsa PSComputerName özelliğini de görüntüleyebilirsiniz.
Örneğin, aşağıdaki komutlar cmdlet'ini Format-Table kullanarak PSComputerName.
$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 çıkartır.
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, veya Types.ps1xml dosyalarındaki Format.ps1xml 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çilen özellikleri biçimlendirmek ve görüntülemek için veya Format-Tablegibi Format-List biçimlendirme cmdlet'lerini kullanabilirsiniz. İsterseniz, cmdlet'ini Out-GridView 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. Ve cmdlet'lerini başka bir bilgisayardan biçimlendirme verileri almak için kullanırsınız Get-FormatDataExport-FormatData .
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ı PSComputerName'deSort-Objectkullanabilirsiniz. Nesnenin başka bir özelliğine sahip olduğunuzda, farklı bilgisayarlardan gelen sonuçlar çıkışta aralara eklenir
Ayrıca bakınız
PowerShell