変数の多いファイルがあります。
$ cat message.txt
Hello, ${LOCATION}! You too, ${PERSON} ;)
PERSON
定義されていない場合はenvsubst
何もないものに置き換えます。
$ LOCATION=World envsubst < message.txt
Hello, World! You too, ;)
envsubst
ファイル内の多くの環境変数の1つが定義されていない場合、ゼロ以外の終了コード(または信頼できるコード)がどのように失敗するのですか?
ベストアンサー1
perl
環境変数が定義されていない場合は、同じ操作を簡単に実行してエラーで終了できます。
perl -pe 's{\$(?|\{(\w+)\}|(\w+))}{$ENV{$1} // die "$& not defined\n"}ge'