您可以使用command substitution 来捕获变量中的输出:
connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv)
如果您需要跨多行保留输出,即当 Azure CLI 返回 JSON 格式的值时,您可能希望使用稍微不同的格式输出到 stdout。
考虑这个例子:
varResourceGroup=$(az group show -n $resourceGroup)
使用与示例中相同的命令输出到 stdout 将产生一行:
echo $varResourceGroup
{ "id": "/subscriptions/<subscription_id>/resourceGroups/<resourceGroup_name>", "location": "westeurope", "managedBy": null, "name": "<resourceGroup_name>", "properties": { "provisioningState": "Succeeded" }, "tags": null }
如果您使用明显不同的格式,则会保留换行符:
echo "$varResourceGroup"
{
"id": "/subscriptions/<subscription_id>/resourceGroups/<resourceGroup_name>",
"location": "westeurope",
"managedBy": null,
"name": "<resourceGroup_name>",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}