Azure CLI echo命令没有响应
我希望将连接字符串存储在以下变量中:Azure CLI echo命令没有响应,azure,azure-storage,azure-cli,Azure,Azure Storage,Azure Cli,我希望将连接字符串存储在以下变量中: connectionString= az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --q
connectionString= az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv
connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv)
connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv)
当我执行上述操作时,我会在响应中获得完整的连接字符串。但是,当我输入时:
echo $connectionString
…我得到一个空白的答复。未存储该变量。关于尝试其他方法的任何建议?您可以使用以下方法来捕获变量中的输出:
connectionString= az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv
connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv)
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//resourceGroups/”,“location”:“westeurope”,“managedBy”:null,“name”:“,“properties”:{“provisiongstate”:“successed”},“tags”:null}
如果使用明显不同的格式,将保留换行符:
echo "$varResourceGroup"
{
"id": "/subscriptions/<subscription_id>/resourceGroups/<resourceGroup_name>",
"location": "westeurope",
"managedBy": null,
"name": "<resourceGroup_name>",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
echo“$varResourceGroup”
{
“id”:“/订阅//资源组/”,
“地点”:“西欧”,
“managedBy”:空,
“名称”:“,
“财产”:{
“provisioningState”:“已成功”
},
“标记”:空
}
您可以使用以下命令来捕获变量中的输出:
connectionString= az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv
connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv)
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//resourceGroups/”,“location”:“westeurope”,“managedBy”:null,“name”:“,“properties”:{“provisiongstate”:“successed”},“tags”:null}
如果使用明显不同的格式,将保留换行符:
echo "$varResourceGroup"
{
"id": "/subscriptions/<subscription_id>/resourceGroups/<resourceGroup_name>",
"location": "westeurope",
"managedBy": null,
"name": "<resourceGroup_name>",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
echo“$varResourceGroup”
{
“id”:“/订阅//资源组/”,
“地点”:“西欧”,
“managedBy”:空,
“名称”:“,
“财产”:{
“provisioningState”:“已成功”
},
“标记”:空
}
正如霍尔格所说,我们可以使用此脚本定义变量:
connectionString= az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv
connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv)
connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv)
此外,我们可以使用这种方式定义此变量,如下所示:
[root@jasoncli@jasonye ~]# connectionstring=`az storage account show-connection-string -n jasondisk3 -g jasonauto --query connectionString -o tsv`
[root@jasoncli@jasonye ~]# echo $connectionstring
DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName=jasondisk3;AccountKey=m+kQwLuQZiI3LMoMTyAI8KxxxxD+ZaT9HUL3Agxxxxqul4s8fAIHGPMTD/AG2j+TPHBpttq5hXRmTaQ==
希望这有帮助。正如霍尔格所说,我们可以使用此脚本定义变量:
connectionString= az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv
connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv)
connectionString=$(az storage account show-connection-string -n $storageAccount -g $resourceGroup --query connectionString -o tsv)
此外,我们可以使用这种方式定义此变量,如下所示:
[root@jasoncli@jasonye ~]# connectionstring=`az storage account show-connection-string -n jasondisk3 -g jasonauto --query connectionString -o tsv`
[root@jasoncli@jasonye ~]# echo $connectionstring
DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName=jasondisk3;AccountKey=m+kQwLuQZiI3LMoMTyAI8KxxxxD+ZaT9HUL3Agxxxxqul4s8fAIHGPMTD/AG2j+TPHBpttq5hXRmTaQ==
希望这能有所帮助。请提供更多解释,说明您的答案是什么以及为什么有效。虽然这可能会立即对OP有所帮助,但更详细的解释将证明对未来的其他用户更有帮助。谢谢@Engineero,你是对的-我添加了更多信息。太棒了!感谢您的快速回复,并对回来晚表示歉意。这成功了!请提供更多的解释,说明你的答案是什么以及为什么有效。虽然这可能会立即对OP有所帮助,但更详细的解释将证明对未来的其他用户更有帮助。谢谢@Engineero,你是对的-我添加了更多信息。太棒了!感谢您的快速回复,并对回来晚表示歉意。这成功了!