我知道我可以使用间接扩展来调用其名称包含在其他变量中的变量,如下所示
VAR = “测试”
VARNAME = “VAR”
echo $ {!VARNAME}
但是,如果我尝试使用以下方法重新定义变量:
VARVALUE = 0 VALUE = “VARVALUE”
$ {!VARNAME} = $ {!VALUE}
echo $ {!VARNAME}
它不起作用,我得到了
bash:test = 0:找不到命令
我可以看到为什么这个变量声明失败了,但我看不出如何修复它。在搜索中我只找到了用间接扩展调用变量的例子,但没有定义它们。
编辑:
经过一番搜索,我试过了
eval“$ {!VARNAME} = $ {!VALUE}”
抛出
bash:= 0:找不到命令
答案 0 :(得分:0)
摆弄它,我已经设法找到了解决方案
评估“$ VARNAME = $ {!VALUE}”