Formatera cmdlet-utdata för Azure PowerShell
Viktigt
Eftersom Az PowerShell-moduler nu har alla funktioner i AzureRM PowerShell-moduler med mera kommer vi att dra tillbaka AzureRM PowerShell-moduler den 29 februari 2024.
För att undvika tjänstavbrott uppdaterar du skripten som använder AzureRM PowerShell-moduler för att använda Az PowerShell-moduler senast den 29 februari 2024. Om du vill uppdatera skripten automatiskt följer du snabbstartsguiden.
Som standard har varje Azure PowerShell-cmdlet fördefinierad formatering av utdata, vilket gör det enklare att läsa. PowerShell ger också flexibiliteten att justera utdata eller konvertera cmdlet-utdata till ett annat format med följande cmdletar:
| Formatering | Konvertering |
|---|---|
| Format-Custom | ConvertTo-Csv |
| Format-List | ConvertTo-Html |
| Format-Table | ConvertTo-Json |
| Format-Wide | ConvertTo-Xml |
Formatexempel
I det här exemplet får vi en lista över virtuella Azure-datorer i standardprenumerationen. Kommandot Get-AzureRmVM formaterar som standard utdata i tabellformat.
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
Om du vill begränsa de kolumner som returneras kan du använda cmdleten Format-Table. I följande exempel har vi samma lista över virtuella datorer men begränsar utdata till endast den virtuella datorns namn, resursgrupp och den virtuella datorns plats. Parametern -Autosize ändrar storleken på kolumner enligt storleken på data.
Get-AzureRmVM |
Format-Table -Property Name, ResourceGroupName, Location -AutoSize
Name ResourceGroupName Location
---- ----------------- --------
MyUnbuntu1610 MYWESTEURG westeurope
MyWin2016VM MYWESTEURG westeurope
Utdata kan även formateras i en lista. I följande exempel ser du detta med cmdleten 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
Konvertera till andra datatyper
PowerShell kan också ta kommandoutdata och konvertera dem till flera dataformat. I följande exempel använder vi cmdleten Select-Object för att hämta attributen för de virtuella datorerna i vår prenumeration och konvertera utdata till CSV-format för enkel import till en databas eller ett kalkylblad.
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"
Utdata kan även konverteras till JSON-format. Följande exempel skapar samma lista över virtuella datorer, men ändrar formatet för utdata till 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"
}
]