【发布时间】:2021-08-01 10:32:48
【问题描述】:
我有一个 myfile,其中包含类似的行
#!/usr/bin/env python3
print("Hello world")
names = ('${(j:', ':)ZSH_VAR[@]}', )
我想在我加载的 shell 中使用环境变量预处理这个文件(在我的例子中是zsh,但通用的bash 解决方案也可以很好地工作)。
我该怎么做相当于
$ declare -ga ZSH_VAR=( 1 2 3 )
$ preprocess < myfile
这样的输出是
#!/usr/bin/env python3
print("Hello world")
bar=('1', '2', '3', )
【问题讨论】:
-
我不确定我是否理解正确,但是您在寻找
envsubst吗? -
eval 'bar="$BAR"'或declare 'bar="$BAR"'? -
查看 Wooledge wiki 上的 TemplateFiles 页面。
标签: bash shell environment-variables zsh