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.
Her Azure PowerShell cmdlet'in sonuçları bir Azure PowerShell nesnesidir. Açıkça Get- işlem yapmayan cmdlet'ler bile, oluşturulan veya değiştirilen bir kaynak hakkında bilgi vermek için denetlenebilecek bir değer döndürebilir. Çoğu cmdlet tek bir nesne döndürse de, bazıları yinelenmesi gereken bir dizi döndürür.
Genellikle, Select-Object cmdlet'iyle Azure PowerShell çıkışını sorgularsınız. Çıktı Where-Object ile filtrelenebilir.
Basit özellikleri seçme
Varsayılan tablo biçiminde, Azure PowerShell cmdlet'ler tüm kullanılabilir özelliklerini görüntülemez.
Format-List cmdlet'ini kullanarak veya çıkışı Select-Object -Property * öğesine yönlendirerek tam özellikleri alabilirsiniz.
Get-AzVM -Name TestVM -ResourceGroupName TestGroup |
Select-Object -Property *
ResourceGroupName : TESTGROUP
Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/TESTGROUP/providers/Micro
soft.Compute/virtualMachines/TestVM
VmId : 00000000-0000-0000-0000-000000000000
Name : TestVM
Type : Microsoft.Compute/virtualMachines
Location : westus2
LicenseType :
Tags : {}
AvailabilitySetReference :
DiagnosticsProfile :
Extensions : {}
HardwareProfile : Microsoft.Azure.Management.Compute.Models.HardwareProfile
InstanceView :
NetworkProfile : Microsoft.Azure.Management.Compute.Models.NetworkProfile
OSProfile : Microsoft.Azure.Management.Compute.Models.OSProfile
Plan :
ProvisioningState : Succeeded
StorageProfile : Microsoft.Azure.Management.Compute.Models.StorageProfile
DisplayHint : Compact
Identity :
Zones : {}
FullyQualifiedDomainName :
AdditionalCapabilities :
RequestId : 00000000-0000-0000-0000-000000000000
StatusCode : OK
İlgilendiğiniz özelliklerin adlarını bildiğinizde, bu özellik adlarını Select-Object ile doğrudan alabilirsiniz.
Get-AzVM -Name TestVM -ResourceGroupName TestGroup |
Select-Object -Property Name, VmId, ProvisioningState
Name VmId ProvisioningState
---- ---- -----------------
TestVM 00000000-0000-0000-0000-000000000000 Succeeded
kullanılarak Select-Object elde edilen çıkış, istenen bilgileri görüntülemek için her zaman biçimlendirilir. Cmdlet sonuçlarını sorgulamanın bir parçası olarak biçimlendirmeyi kullanma hakkında bilgi edinmek için bkz. Format Azure PowerShell cmdlet output.
İç içe özellikleri seçme
Azure PowerShell cmdlet çıkışındaki bazı özellikler, StorageProfile çıkışının Get-AzVM özelliği gibi iç içe nesneler kullanır. İç içe geçmiş bir özelliğin değerini almak için, bir sözlük argümanında Select-Object olarak incelemek istediğiniz değerin görünen adını ve tam yolunu sağlayın.
Get-AzVM -ResourceGroupName TestGroup |
Select-Object -Property Name, @{label='OSType'; expression={$_.StorageProfile.OSDisk.OSType}}
Name OSType
---- ------
TestVM Linux
TestVM2 Linux
WinVM Windows
Her sözlük bağımsız değişkeni nesneden bir özellik seçer. Ayıklanacak özellik bir ifadenin parçası olmalıdır.
Sonuçları filtrele
Where-Object cmdlet'i, iç içe özellikler de dahil olmak üzere herhangi bir özellik değerine göre sonucu filtrelemenizi sağlar. Sonraki örnekte, bir kaynak grubundaki Linux VM'lerini bulmak için nasıl kullanılacağı Where-Object gösterilmektedir.
Get-AzVM -ResourceGroupName TestGroup |
Where-Object {$_.StorageProfile.OSDisk.OSType -eq 'Linux'}
ResourceGroupName Name Location VmSize OsType NIC ProvisioningState Zone
----------------- ---- -------- ------ ------ --- ----------------- ----
TestGroup TestVM westus2 Standard_D2s_v3 Linux testvm299 Succeeded
TestGroup TestVM2 westus2 Standard_D2s_v3 Linux testvm2669 Succeeded
Select-Object ve Where-Object sonuçlarını birbirine yöneltebilirsiniz. Performans amacıyla, her zaman Where-Object işlemini Select-Object işleminden önce yerleştirmek önerilir.
Get-AzVM -ResourceGroupName TestGroup |
Where-Object {$_.StorageProfile.OsDisk.OsType -eq 'Linux'} |
Select-Object -Property Name, VmID, ProvisioningState
Name VmId ProvisioningState
---- ---- -----------------
TestVM 00000000-0000-0000-0000-000000000000 Succeeded
TestVM2 00000000-0000-0000-0000-000000000000 Succeeded
Azure PowerShell