如何外部化「heredoc」的模板部分?外部化來自heredoc的模板
我有一個使用「定界符」將數據寫入到文件的bash腳本:
foo=bar
data=$(cat <<EOF
foo: $foo
EOF
)
echo $data
當執行這個腳本,我看到預期foo: bar
。
現在,我想從腳本中拉出模板部分以支持使用不同模板文件的多種輸出格式。例如,template.properties
文件只包含:
foo: $foo
爲此我修改劇本:
foo=bar
template=$(cat template.properties)
data=$(cat <<EOF
$template
EOF
)
echo $data
我遇到的問題是,$foo
變量永遠不會被評估,即上面的代碼打印出foo: $foo
而不是所需的foo: bar
。
您需要template.properties'的'內容評估,對於工作。 – andlrc