首页 > 解决方案 > 如何将通过 Azure CLI 获得的数据附加到 Python 列表和字典中?

问题描述

我正在使用 azure CLI 获取虚拟机规模集 (VMSS) 中的虚拟机实例列表: "az vmss list-instances --resource-group xyzrg --name xyz" 。我想将作为输出获得的不同实例的名称添加到 python 列表中。我该怎么做?

标签: pythonpython-3.xazureazure-virtual-machineazure-cli

解决方案


为了严格回答您的问题,CLI 可以返回您可以解析的 JSON。我猜根据您的问题,您从 Python 对 CLI 进行子处理,因此获取子流程输出并将其重新解析为 JSON。

话虽如此,我不得不说,如果这是您唯一的需要,那就过于复杂了,您最好使用 SDK: https ://docs.microsoft.com/en-us/python/api/azure- mgmt-compute/azure.mgmt.compute.v2018_04_01.operations.virtualmachinescalesetsoperations?view=azure-python#list

如果您担心的是身份验证问题,您甚至可以加载 CLI 凭据: https ://docs.microsoft.com/en-us/python/azure/python-sdk-azure-authenticate?view=azure-python#mgmt-auth -cli

这将在几行中完成:

from azure.common.client_factory import get_client_from_cli_profile
from azure.mgmt.compute import ComputeManagementClient

client = get_client_from_cli_profile(ComputeManagementClient)
result = [vmss.name for vmss in client.virtual_machine_scale_sets.list('xyzrg', 'xyz')]

只是在说


推荐阅读