[envsubst] 在bash中优雅的使用配置模板
Contents
envsubst 用shell中环境变量值替换字符串中的变量
在shell脚本中,常会遇到需要动态修改或生成配置文件的场景,这个情况如果在其他编程语言里,
就会直接使用模板生成,在shell脚本中就可以用envsubst
命令实现。
用法
|
|
在正常操作模式下,标准输入被复制到标准输出,对 $VARIABLE 或 ${VARIABLE} 形式的环境变量的引用被替换为相应的值。如果给出了 SHELL-FORMAT,则仅替换那些在 SHELL-FORMAT 中引用的环境变量;否则,标准输入中出现的所有环境变量引用都将被替换。
示例
- 替换所有环境变量
模板文件welcome.txt内容如下
|
|
设置环境变量,并替换如下
|
|
- 替换指定环境变量
使用 [SHELL-FORMAT] 指定环境变量参数
模板文件shell_format_test.txt内容如下
|
|
只替换一个变量
|
|
替换多个变量
|
|