Maison  >  Questions et réponses  >  le corps du texte

shell - docker run sh -c " "读取不到全局变量。

在shell脚本中启动docker容器,脚本如下:

#!/bin/bash
export EXE_FILE="rdbs_cbb_test aom_cell_test" ;

docker login -u admin -p admin123 registry:5000;

docker run --rm \
registry:5000/compiler/cmake-unit-test:v1.0 bash -c ' \
#    EXE_FILE="rdbs_cbb_test aom_cell_test";\

    IFS=" " read -r -a arr <<< "$EXE_FILE";\
    for s in ${arr[@]}; \
    do \
        echo $s; \
    done \
  '

docker run 时执行的脚本读取$EXE_FILE变量的值为空,也测试了不使用export导出变量的方式,但是$EXE_FILE始终为空。

请问该如何向在docker run sh -c " "脚本中该如何读取到全局变量?

非常感谢。

为情所困为情所困2756 Il y a quelques jours632

répondre à tous(1)je répondrai

  • 巴扎黑

    巴扎黑2017-04-26 09:04:23

    Utilisez des guillemets doubles pour les commandes suivantes

    docker run ... bash -c ... et remplacez le contenu par des guillemets simples

    répondre
    0
  • Annulerrépondre