envsubstで受け付けた標準入力をテンプレートとして変数展開させる

ちょっと前にシェル芸botで遊んでたところ、受け付けた標準入力をテンプレートファイルとして解釈して、変数展開を行ってくれるenvsubstなるコマンドについて知ったので、備忘として残しておくことにする。
gettextパッケージに入っているので、もしインストールされていない場合はyumやapt、brewからインストールするといいだろう。

Sponsored Links

使い方は簡単で、以下のようにパイプで変数のある内容を渡してやることでその内容を展開してくれる。

command | envsubst
[root@BS-PUB-CENT7-01 ~]# export TEST="TEST TEXT."
[root@BS-PUB-CENT7-01 ~]# echo $TEST
TEST TEXT.
[root@BS-PUB-CENT7-01 ~]#
[root@BS-PUB-CENT7-01 ~]# echo '=== $TEST ==='
=== $TEST ===
[root@BS-PUB-CENT7-01 ~]#
[root@BS-PUB-CENT7-01 ~]# echo '=== $TEST ===' | envsubst
=== TEST TEXT. ===

 


Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。

*