Azure CLI-运行脚本文件

时间:2019-03-24 14:02:04

标签: azure azure-cli

运行文件中包含的一组AZ命令的过程是什么?文件扩展名应该是什么?例如,以下命令包含在名为“ sample.ps1”的文件中。

az login --subscription "demo-sub1"

az group create \

    --name "demo-rg" \

    --location "West US 2"

在Powershell中是否有要运行的AZ命令来加载/运行此文件? 。\ sample.ps1似乎无法正常工作。将显示登录提示,但是当我选择要登录的帐户时,什么都没有发生,“选择帐户”屏幕仍然存在,而通常只需从PS运行az login命令即可,然后进行重定向。在这种情况下,它只是挂起,脚本的第二行永远不会执行。

2 个答案:

答案 0 :(得分:1)

在这种情况下-powershell只是一个shell。例如,在sample.ps1内,以下代码就可以正常工作:

az login
az group list

唯一的警告-Powershell使用反引号作为换行符,而不是\。因此您的代码应如下所示:

az login --subscription "demo-sub1"
az group create `
    --name "demo-rg" `
    --location "West US 2"

答案 1 :(得分:0)

如果您想编写azureCli脚本,我会说您应该使用*.cmd文件。因此,您的文件看起来像这样

@echo off

az login --subscription "demo-sub1"

az group create \

    --name "demo-rg" \

    --location "West US 2"

如果要使用PowerShell,则建议使用Azure PowerShell。
另外,如果您使用脚本登录,我建议您使用服务主体。

@echo off

az login --service-principal --username APP_ID --tenant TENANT_ID --password /path/to/cer

有关密钥库的文档有点过头,但是其余的都是正确的

检查https://docs.microsoft.com/en-us/cli/azure/create-an-azure-service-principal-azure-cli?view=azure-cli-latest