簡體   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