[Shell command] envsubst で指定した環境変数だけ展開する
作成日: 2020年12月30日
envsubst
コマンドの引数に展開したい環境変数名を記述すると、展開する環境変数を限定することができます。
例
まず下記のテンプレートファイル sample.template
を用意します。
Hello, ${NAME1}.
Good bye, ${NAME2}.
環境変数 NAME1
と NAME2
に文字列をセットします。
export NAME1="suzuki"
export NAME2="tanaka"
envsubst
コマンドの引数に、環境変数 NAME1
だけ展開するように指定します。
cat sample.template | envsubst '${NAME1}'
実行結果は下記となります。${NAME1}
だけ展開されていることが分かります。
Hello, suzuki.
Good bye, ${NAME2}.
変数名の指定はカンマ区切りで複数の指定を行うこともできます。
cat sample.template | envsubst '${NAME1},${NAME2}'