添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

创建 VM 后,可以检索有关 VM 的详细信息。 用于从资源获取信息的常见命令是 show

az vm show --name $vmName --resource-group $resourceGroup

虚拟机具有许多难以直观分析的属性。 返回的 JSON 包含有关身份验证、网络接口存储等的信息。 最重要的是,它包含 VM 连接到的资源的 Azure 对象 ID。 对象 ID 允许直接访问这些资源,以获取有关 VM 的配置和功能的详细信息。

为了提取对象 ID,需要使用--query参数。 查询以 JMESPath 查询语言编写。 首先获取网络接口控制器 (NIC) 对象 ID。

az vm show --name $vmName \
  --resource-group $resourceGroup \
  --query 'networkProfile.networkInterfaces[].id' \
  --output tsv
az vm show --name $vmName `
    --resource-group $resourceGroup `
    --query 'networkProfile.networkInterfaces[].id' `
    --output tsv
              networkProfile 是顶级 JSON 的一个键,其中包含 networkInterfaces 作为子键。 如果 JSON 值是字典,则通过父键使用.运算符引用其键。
  • networkInterfaces值是一个数组,因此它用[]运算符展平。 此运算符在每个数组元素上运行查询的其余部分。 在这种情况下,它获取 id 每个数组元素的值。
  • 输出格式 tsv (制表符分隔值)保证仅包含由制表符和换行符组成的结果数据和空格。 由于返回的值是单个裸字符串,因此可以直接分配给 shell 变量是安全的。

    有关查询 Azure CLI 输出的详细信息,请参阅 如何使用 JMESPath 查询查询 Azure CLI 命令输出

    请继续,将 NIC 对象 ID 分配到 shell 变量中。