繁体   English   中英

az vim run-command使用参数调用shell脚本

[英]az vim run-command invoke shell script with parameters

我想使用az cli调用运行脚本。

I_PASS_THIS_VAR=${1}
az vm run-command invoke     --command-id RunShellScript \
                                 --scripts '@foo.sh' \
                                 --parameters=${I_PASS_THIS_VAR} \
                                 -o tsv

我传递$ I_PASS_THIS_VAR的地方,它是一些字符串。 然后foo.sh是:

#!/bin/bash
PARAM=${1}
if [ ${PARAM} ]
then
    echo "export MY_PARAM=${PARAM}" >> "${HOME_DIR}/.bashrc"
fi

我不工作。 MY_PARAM等于零。 为什么?

要在Linux VM中运行shell脚本,命令应如下所示:

az vm run-command invoke -g group_name -n vm_name --command-id RunShellScript --scripts @run_command.sh --parameters param1

shell脚本位于运行Azure CLI命令的位置。 你的shell脚本会喜欢这个:

if [ $1 ]
then
        echo "export My_Param=$1" >> "/path/.bashrc"
fi

您可以在Azure CLI命令中输入参数作为--parameter的值,并在shell脚本中引用它们,就像上面的代码一样。 你应该照顾的一点是,该path在上面的代码应该是绝对路径。 例如,/ /home/useraccount/.bashrc / useraccount /home/useraccount/.bashrcuseraccount是您要导出环境变量的用户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM