Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Hasil setiap cmdlet Azure PowerShell adalah objek Azure PowerShell. Bahkan cmdlet yang tidak secara eksplisit merupakan operasi mungkin mengembalikan nilai yang dapat diperiksa untuk menyediakan informasi tentang sumber daya yang dibuat atau dimodifikasi. Sementara sebagian besar cmdlet mengembalikan satu objek, beberapa mengembalikan array yang harus diulang.
Biasanya, Anda meminta output dari Azure PowerShell dengan cmdlet Select-Object. Output dapat difilter dengan Where-Object.
Pilih properti sederhana
Dalam format tabel default, cmdlet Azure PowerShell tidak menampilkan semua properti yang tersedia.
Anda bisa mendapatkan properti lengkap dengan menggunakan cmdlet Format-List, atau dengan mengalirkan keluaran ke Select-Object -Property *:
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
Setelah mengetahui nama-nama properti yang Anda minati, Anda dapat menggunakan nama-nama properti tersebut dengan Select-Object untuk mendapatkannya langsung.
Get-AzVM -Name TestVM -ResourceGroupName TestGroup |
Select-Object -Property Name, VmId, ProvisioningState
Name VmId ProvisioningState
---- ---- -----------------
TestVM 00000000-0000-0000-0000-000000000000 Succeeded
Hasil dari penggunaan Select-Object selalu diatur formatnya untuk menampilkan informasi yang diminta. Untuk mempelajari tentang menggunakan pemformatan sebagai bagian dari hasil cmdlet dari kueri, lihat Format keluaran cmdlet Azure PowerShell.
Pilih properti berlapis
Beberapa properti dalam output cmdlet Azure PowerShell menggunakan objek berlapis, seperti properti StorageProfile output Get-AzVM. Untuk mendapatkan nilai dari properti berlapis, berikan nama tampilan dan jalur lengkap ke nilai yang ingin Anda periksa sebagai bagian dari argumen kamus ke Select-Object:
Get-AzVM -ResourceGroupName TestGroup |
Select-Object -Property Name, @{label='OSType'; expression={$_.StorageProfile.OSDisk.OSType}}
Name OSType
---- ------
TestVM Linux
TestVM2 Linux
WinVM Windows
Setiap argumen kamus memilih satu properti dari objek. Properti yang akan diekstrak harus menjadi bagian dari ekspresi.
Memfilter hasil
Where-Object Cmdlet memungkinkan Anda memfilter hasil berdasarkan nilai properti apa pun, termasuk properti berlapis. Contoh berikutnya menunjukkan cara menggunakan Where-Object untuk menemukan VM Linux dalam grup sumber daya.
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
Anda dapat mem-pipe-kan hasil dari Select-Object ke Where-Object. Untuk tujuan performa, selalu disarankan untuk menempatkan Where-Object operasi sebelum Select-Object:
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