azure自定义扩展脚本,将az cli传递给bash脚本

时间:2019-10-13 04:36:26

标签: bash azure azure-resource-manager

我正在尝试将参数从手臂模板自定义脚本扩展传递到bash脚本 az登录-u azUsername -p azPassword

我不确定如何将这些值传递给sh脚本,以及如何使其继续失败

"commandToExecute": {
                    "value": "[concat('sh samplebash.sh',' ',parameters('azUsername'),' ',parameters('azPassword'))]"
                }

bash脚本:

#!/bin/bash
echo "$azUsername"
echo "${azUsername}"
echo azUsername
echo $azUsername
echo hello

需要一些帮助来获取bash脚本中的值 预先感谢

1 个答案:

答案 0 :(得分:0)

您可以使用变量来设置commandToExecute,如下所示:

"executeCommand": "[concat('sh samplebash.sh', ' ', parameters('azUsername'), ' ', parameters('azPassword'))]"

然后您可以这样设置扩展名:

"commandToExecute": "[variables('executeCommand')]"

或者您可以像这样直接设置扩展名:

"commandToExecute": "[concat('sh samplebash.sh', ' ', parameters('azUsername'), ' ', parameters('azPassword'))]"

在脚本中,您应该进行一些更改,有两种方法。

第一

#!/bin/bash

echo "azUsername:$1"
echo "azPassword:$2"

第二:

#!/bin/bash

azUsername=$1
azPassword=$2
echo $azUsername
echo $azPassword

顺便说一句,我想当您在脚本中使用#!/bin/bash时,最好使用命令bash script.sh执行脚本。在某些Linux发行版中,shbash是不同的命令。