Azure PowerShell コマンドレット出力の書式設定
重要
Az PowerShell モジュール で AzureRM PowerShell モジュールのすべての機能およびその他を利用できるようになったため、2024 年 2 月 29 日に AzureRM PowerShell モジュールは廃止になります。
サービスの中断を回避するために、2024 年 2 月 29 日までに、AzureRM PowerShell モジュールを使用するスクリプトを更新して、Az PowerShell モジュールを使用するようにしてください。 スクリプトを自動的に更新するには、 クイックスタート ガイドに従ってください。
Azure PowerShell コマンドレットにはそれぞれ、出力結果が読みやすいように既定の書式があらかじめ定義されています。 次の PowerShell コマンドレットを使って、必要に応じて出力の書式を調整したり、コマンドレットの出力形式を変換したりすることもできます。
| 書式設定 | 変換 |
|---|---|
| Format-Custom | ConvertTo-Csv |
| Format-List | ConvertTo-Html |
| Format-Table | ConvertTo-Json |
| Format-Wide | ConvertTo-Xml |
書式設定の例
この例では、既定のサブスクリプションに含まれる一連の Azure VM を取得しています。 Get-AzureRmVM コマンドの既定の出力は表形式です。
Get-AzureRmVM
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
取得する列を制限する必要がある場合は、Format-Table コマンドレットを使ってください。 以下の例は、先ほどと同じ一連の仮想マシンを取得するものです。ただし今回は、VM の名前とリソース グループ、VM の場所に出力内容を限定しています。 データのサイズに応じて列のサイズを変更するには、-Autosize パラメーターを使います。
Get-AzureRmVM |
Format-Table -Property Name, ResourceGroupName, Location -AutoSize
Name ResourceGroupName Location
---- ----------------- --------
MyUnbuntu1610 MYWESTEURG westeurope
MyWin2016VM MYWESTEURG westeurope
リスト形式で出力することもできます。 Format-List コマンドレットを使った表示例を次に示します。
Get-AzureRmVM |
Format-List -Property Name, VmId, Location, ResourceGroupName
Name : MyUnbuntu1610
VmId : 33422f9b-e339-4704-bad8-dbe094585496
Location : westeurope
ResourceGroupName : MYWESTEURG
Name : MyWin2016VM
VmId : 4650c755-fc2b-4fc7-a5bc-298d5c00808f
Location : westeurope
ResourceGroupName : MYWESTEURG
他のデータ型への変換
PowerShell では、コマンド出力を複数のデータ形式に変換することもできます。 次の例では、Select-Object コマンドレットを使って、サブスクリプションに含まれる仮想マシンの属性を取得し、その出力を、データベースやスプレッドシートにインポートしやすいように CSV に変換します。
Get-AzureRmVM |
Select-Object -Property ResourceGroupName, Id, VmId, Name, Location, ProvisioningState |
ConvertTo-Csv -NoTypeInformation
"ResourceGroupName","Id","VmId","Name","Location","ProvisioningState"
"MYWESTUERG","/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYWESTUERG/providers/Microsoft.Compute/virtualMachines/MyUnbuntu1610","33422f9b-e339-4704-bad8-dbe094585496","MyUnbuntu1610","westeurope","Succeeded"
"MYWESTUERG","/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYWESTUERG/providers/Microsoft.Compute/virtualMachines/MyWin2016VM","4650c755-fc2b-4fc7-a5bc-298d5c00808f","MyWin2016VM","westeurope","Succeeded"
出力を JSON 形式に変換することもできます。 次の例は、先ほどと同じ VM のリストを作成するものですが、出力形式は JSON に変更しています。
Get-AzureRmVM |
Select-Object -Property ResourceGroupName, Id, VmId, Name, Location, ProvisioningState |
ConvertTo-Json
[
{
"ResourceGroupName": "MYWESTEURG",
"Id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYWESTEURG/providers/Microsoft.Compute/virtualMachines/MyUnbuntu1610",
"VmId": "33422f9b-e339-4704-bad8-dbe094585496",
"Name": "MyUnbuntu1610",
"Location": "westeurope",
"ProvisioningState": "Succeeded"
},
{
"ResourceGroupName": "MYWESTEURG",
"Id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYWESTEURG/providers/Microsoft.Compute/virtualMachines/MyWin2016VM",
"VmId": "4650c755-fc2b-4fc7-a5bc-298d5c00808f",
"Name": "MyWin2016VM",
"Location": "westeurope",
"ProvisioningState": "Succeeded"
}
]