我试图有两层间接,但如果我是XY 问题的受害者,请告诉我
> test1=\$test2
> test2="string to print"
> echo $test2
string to print
> echo $test1
$test2
Run Code Online (Sandbox Code Playgroud)
这一切都说得通,但我想要的是使用$test1
并打印出执行命令string to print
。我的直觉反应是这应该有效
> echo $(echo $test1)
$test2
Run Code Online (Sandbox Code Playgroud)
胡说。有谁知道这是否可能?
我想创建一个包含$variables
可重复用于生成许多文本文件的文本文件模板。我的想法是:设置环境变量,处理模板文件,输出到另一个文件。
例子:
> #set vars
> cat template.txt | magic_var_expansion_cmd > out1.txt
> #set vars
> cat template.txt | magic_var_expansion_cmd > out2.txt
> #set vars
> cat template.txt | magic_var_expansion_cmd > out3.txt
Run Code Online (Sandbox Code Playgroud)
这显然可以用在脚本中,并以更复杂的方式使用,但这是我心目中的MVP。
bash ×1