Использовать значение переменной в качестве параметра среды в GoCD

Я пытаюсь написать сценарий оболочки, который читает переменные из файла и заменяет его на переменную Environment, определенную в GoCD.

Теперь передо мной стоит задача: я использую значение переменной в качестве параметра.

Ниже мой сценарий

#!/bin/bash 
filename="keyword.txt" 
while IFS="," read f1 f2 f3
do
        f6="Env_var"
        a="$($f6)"
        echo $a
       # echo "$f1" "$f3"
       # sed -i s|$f1|$($f6)|g /var/lib/go-agent/pipelines/StormCluster-Deploy-2/"$f3".xml
done < "$filename"

Также в переменной среды GoCD я дал Env_var = 1234

Теперь здесь скрипт дает вывод $Env_var

Где, как я хочу, значение $Env_var, т.е. 1234, определено в GoCD как переменная окружения должна быть

Пожалуйста, помогите!

1 ответ

Я думаю, что проблема не в GoCD, а в неправильном расширении параметров. Что вы, вероятно, должны сделать, это:

a="${!f6}"

Вы можете прочитать больше об этом в разделе Расширения параметров оболочки.

Другие вопросы по тегам