Powershell - 从 Azure (az) 命令中检索值

Powershell - Retrieve values from Azure (az) commands

我正在尝试编写一个简单的脚本来从 Azure 存储帐户中检索键值。下面是代码:

az login
az account set --subscription 1111-222-3333-444-55555555


$azure_blob_login = "teststorage123"
$azure_blob_access_key = az storage account keys list --account-name $azure_blob_login


Write-Output $azure_blob_access_key
Write-Output $azure_blob_access_key[0]

第一个写输出的输出是:

[
  {
    "creationTime": "2022-02-23T06:45:00.085500+00:00",
    "keyName": "key1",
    "permissions": "FULL",
    "value": "11111111111111111111111111111111111111111111111"
  },
  {
    "creationTime": "2022-02-23T06:45:00.085500+00:00",
    "keyName": "key2",
    "permissions": "FULL",
    "value": "22222222222222222222222222222222222222222222"
  }
]

然而,我试图索引以获取数组中的第一个值的第二个写入输出的输出只是: [

有人知道我如何 return 这个 az 命令的值并且只从数组的第一个条目中获取第一个“值”条目吗?

谢谢,

Az cli 的默认输出是 JSON。

如果要创建属性数组,则必须将 az cli 输出转换为 psobject

$keys = $azure_blob_access_key | ConvertFrom-Json
$keys[0]