0

ファイルから変数を読み込み、GoCDで環境変数定義で置き換えるシェルスクリプトを作成しようとしています。変数値をGoCDの環境パラメータとして使用

は、今私が直面してるの挑戦iがパラメータとして

以下

を変数の値を使用しようとしているある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" 

私のスクリプトですが、私は= ENV_VARを与えています私はしたいと今ここにスクリプトが出力 $ ENV_VAR

を与えている1234

$ ENV _var値、つまり1234がGoCDで環境変数として定義されています。

助けてください!

答えて

0

問題はGoCDではなく、誤ったパラメータ拡張であると思います。あなたはおそらく、やるべきことは次のとおりです。

a="${!f6}" 

あなたはShell Parameter Expansionセクションでそれについての詳細を読むことができます。

+0

これは実行されていないので、値 – Yushi

+0

も表示されません。これはbashで動作します。試してみてください:https://www.jdoodle.com/embed/v0/bash/4.2.42/2DR – grundic

関連する問題