我有一个包含文件test.inc:
export XXX=xxx
我在调用bash来解释字符串时使用它:
bash -c ". test.inc; echo $XXX"
但是变量没有设置在echo命令的位置。如果我做' export'我可以看到它:
bash -c ". test.inc; export"
显示
declare -x XXX="XXX"
当我使用bash -c语法时,如何让我的第一个命令看到源文件中导出的变量?
答案 0 :(得分:0)
您正在使用双引号。因此,当前shell在$XXX
实例看到它之前很久就会扩展bash -c
。切换到单引号,或逃避美元符号。