Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Teď, když jste vytvořili virtuální počítač, můžete načíst podrobné informace o něm. Běžným příkazem pro získání informací z prostředku je show.
az vm show --name $vmName --resource-group $resourceGroup
Virtuální počítač má mnoho vlastností, které může být obtížné vizuálně analyzovat. Vrácený kód JSON obsahuje informace o ověřování, úložišti síťového rozhraní a dalších. Nejdůležitější je, že obsahuje ID objektů Azure pro prostředky, ke kterým je virtuální počítač připojený. ID objektů umožňují přímý přístup k těmto prostředkům, abyste získali další informace o konfiguraci a možnostech virtuálního počítače.
Pokud chcete extrahovat ID objektu, použije se --query argument. Dotazy se zapisují v dotazovacím jazyce JMESPath. Začněte získáním ID objektu síťového adaptéru (NIC).
az vm show --name $vmName \
--resource-group $resourceGroup \
--query 'networkProfile.networkInterfaces[].id' \
--output tsv
Tady se hodně děje, stačí přidat dotaz. Každá část odkazuje na klíč ve výstupním formátu JSON nebo je operátorem JMESPath.
-
networkProfileje klíčem json nejvyšší úrovně, který mánetworkInterfacesjako podklíč. Pokud je hodnota JSON slovníkem, odkazování na jeho klíče probíhá z klíče nadřazeného objektu pomocí operátoru.. - Hodnota
networkInterfacesje pole, takže je zploštěna operátorem[]. Tento operátor spustí zbytek dotazu na každý prvek pole. V tomto případě získáidhodnotu každého prvku pole.
Ve výstupním formátu tsv (hodnoty oddělené tabulátory) je zaručeno, že budou obsahovat pouze výsledná data a prázdné znaky skládající se z tabulátorů a nových řádků. Vzhledem k tomu, že vrácená hodnota je jeden samotný řetězec, je bezpečné přiřadit přímo k shell proměnné.
Další informace o dotazování výstupu Azure CLI najdete v tématu Dotazování výstupu příkazu Azure CLI pomocí dotazu JMESPath.
Pokračujte a přiřaďte ID objektu NIC proměnné shellu.
nicId=$(az vm show \
-n $vmName \
-g $resourceGroup \
--query 'networkProfile.networkInterfaces[].id' \
-o tsv)
Tento příklad také ukazuje použití krátkých argumentů. Můžete použít -g místo --resource-group, -n místo --name a -o místo --output.