[英]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/.bashrc
和useraccount
是您要导出环境变量的用户。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.