gpt4 book ai didi

使用 Azure CLI 的 Bash 脚本

转载 作者:行者123 更新时间:2023-12-03 00:59:29 25 4
gpt4 key购买 nike

我是 shell 脚本新手。我正在尝试使用

az sig image-version list<code></code>

<code>
<p>command from azure which should return a list of versions and storing it into a list/array. So I can step through the list in a for loop.</p>
</code><pre><code>VERSIONS_LIST="$(az sig image-version list --gallery-image-definition $GALLERY_IMAGE_NAME --gallery-name $GALLERY_NAME --resource-group $RESOURCE_GROUP_NAME)`"
</code></pre>
<p>However, I am not sure if the command returns more than just the versions. If so how can I only take part of the output?</p>
<p>I am also having issue with displaying the populated list. I believe my syntax of using the azure cli to store in the list is wrong. any guidance is much appreciated.</p>
echo VERSION_LIST

我是否将列表正确存储到变量中?

最佳答案

您可以使用Global Parameters --query--output 查询 JMESPath 的版本列表从 az sig image-version list 的输出中,您可以将输出存储为 bash 中的变量,如下所示,不带双引号,

VERSIONS_LIST=$(az sig image-version list --gallery-image-definition $GALLERY_IMAGE_NAME --gallery-name $GALLERY_NAME --resource-group $RESOURCE_GROUP_NAME --query "xxx" --output tsv)

然后您可以使用命令 echo $VERSIONS_LIST 检查变量。如果你想运行for循环,你可以这样做,

for version in $VERSIONS_LIST
do
echo $version

done

例如,这是一个使用 CLI 2.0 的 bash 脚本。请参阅this blog了解更多详情。

#!/bin/bash
rgName=nancytest
vmlist=$(az vm list -g $rgName --query "[].name" -o tsv)

for vm in $vmlist
do

vmLocation=$(az vm show -g $rgName -n $vm --query "location" -o tsv)
echo $vm,$vmLocation

done

参见bash for loop examples .

关于使用 Azure CLI 的 Bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63045595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com