我有一个 bash 函数,我检索其主体并扩展其中的变量。
这是我的 bash 脚本中的代码:
my_var=my_value
my_fn() {
echo $myvar
}
什么typeset -f my_fn
给了我:
my_fn() {
echo $myvar
}
我需要的 :
my_fn() {
echo my_value
}
如何扩展 my_fn 中出现的变量?如果需要,我可以将结果存储在字符串或函数中。
我无法手动扩展所有变量,因为函数可能使用很多变量。我也无法使用,envsubst
因为变量未导出。
解决我的问题的方法是在函数定义时扩展变量,而不是在执行期间扩展变量。