envsubst 将环境变量传递给文件
envsubst是一个非常好用的工具,尤其善于处理和环境变量相关的事务
使用场景
通常我们需要获取某一个或者几个环境去替换系统中的某些变量,这种情况下我们只需使用sed去简单的替换掉即可,在这种场景中,sed就可以满足我们的需求,但是如果我们需要修改的变量较多,而且不确定到底有哪些变量时,envsubst就排上了用场
使用方法
envsubst destination_file
应用举例
假设我们需要将某个环境变量添加到脚本中,则我们只需要制作一个模板文件,然后只需要执行一行命令即可实现替换
tmpl.txt
的内容如下:
set v1=$V1
set v2=${V2}
此时,我们执行如下代码:
v1=apple v2=banana envsubst tmpl.txt
# 或者
export v1=apple
export v2=banana
envsubst tmpl.txt
此时,tmpl.txt
的内容如下:
set v1=apple
set v2=banana