Azure PowerShell cmdlet 쿼리 결과Query output of Azure PowerShell cmdlets

기본 제공 cmdlet을 사용하여 PowerShell에서 쿼리를 완료할 수 있습니다.Querying in PowerShell can be completed by using built-in cmdlets. PowerShell에서 cmdlet은 동사-명사 형태로 이름을 지정합니다.In PowerShell, cmdlet names take the form of Verb-Noun. Get 동사를 사용하는 cmdlet은 cmdlet 쿼리입니다.The cmdlets using the verb Get are the query cmdlets. cmdlet 명사는 cmdlet 동사가 역할을 담당하는 Azure 리소스의 종류입니다.The cmdlet nouns are the types of Azure resources that are acted upon by the cmdlet verbs.

단순 속성 선택Select simple properties

Azure PowerShell에는 각 cmdlet에 대해 정의된 기본 형식이 있습니다.Azure PowerShell has default formatting defined for each cmdlet. 각 리소스 형식의 가장 일반적인 속성은 자동으로 테이블 또는 목록 형식으로 표시됩니다.The most common properties for each resource type are displayed in a table or list format automatically. 출력의 서식을 지정하는 방법에 대한 자세한 내용은 쿼리 결과 서식 지정을 참조하세요.For more information about formatting output, see Formatting query results.

Get-AzureRmVM cmdlet을 사용하여 계정에서 VM 목록을 쿼리합니다.Use the Get-AzureRmVM cmdlet to query for a list of VMs in your account.

Get-AzureRmVM

기본 출력의 서식은 자동으로 테이블로 지정됩니다.The default output is automatically formatted as a table.

ResourceGroupName          Name   Location          VmSize  OsType              NIC ProvisioningState
-----------------          ----   --------          ------  ------              --- -----------------
MYWESTEURG        MyUnbuntu1610 westeurope Standard_DS1_v2   Linux myunbuntu1610980         Succeeded
MYWESTEURG          MyWin2016VM westeurope Standard_DS1_v2 Windows   mywin2016vm880         Succeeded

Select-Object cmdlet을 사용하여 흥미로운 특정 속성을 선택할 수 있습니다.The Select-Object cmdlet can be used to select the specific properties that are interesting to you.

Get-AzureRmVM | Select Name,ResourceGroupName,Location
Name          ResourceGroupName Location
----          ----------------- --------
MyUnbuntu1610 MYWESTEURG        westeurope
MyWin2016VM   MYWESTEURG        westeurope

복잡한 중첩 속성 선택Select complex nested properties

원하는 속성이 JSON 출력에 중첩된 경우 해당 속성의 전체 경로를 제공해야 합니다.If the property you want is nested in the JSON output, you need to supply the full path to the property. 다음 예제에서는 Get-AzureRmVM cmdlet에서 VM 이름 및 OS 형식을 선택하는 방법을 보여 줍니다.The following example shows how to select the VM Name and the OS type from the Get-AzureRmVM cmdlet.

Get-AzureRmVM | Select Name,@{Name='OSType'; Expression={$_.StorageProfile.OSDisk.OSType}}
Name           OSType
----           ------
MyUnbuntu1610   Linux
MyWin2016VM   Windows

Where-Object cmdlet으로 결과 필터링Filter results with the Where-Object cmdlet

Where-Object cmdlet을 사용하면 속성 값에 기반하여 결과를 필터링할 수 있습니다.The Where-Object cmdlet allows you to filter the result based on any property value. 다음 예제에서 필터는 해당 이름에 "RGD"라는 텍스트가 포함된 VM만 선택합니다.In the following example, the filter selects only VMs that have the text "RGD" in their name.

Get-AzureRmVM | Where ResourceGroupName -like RGD* | Select ResourceGroupName,Name
ResourceGroupName  Name
-----------------  ----
RGDEMO001          KBDemo001VM
RGDEMO001          KBDemo020

다음 예제의 결과는 vmSize 'Standard_DS1_V2'가 포함된 VM을 반환합니다.With the next example, the results will return the VMs that have the vmSize 'Standard_DS1_V2'.

Get-AzureRmVM | Where vmSize -eq Standard_DS1_V2
ResourceGroupName          Name     Location          VmSize  OsType              NIC ProvisioningState
-----------------          ----     --------          ------  ------              --- -----------------
MYWESTEURG        MyUnbuntu1610   westeurope Standard_DS1_v2   Linux myunbuntu1610980         Succeeded
MYWESTEURG          MyWin2016VM   westeurope Standard_DS1_v2 Windows   mywin2016vm880         Succeeded