这工作得很好:
>$ ENV=var printenv
ENV=var
这也起作用,但是它为整个外壳设置了环境变量:
>$ export $(echo ENV=var)
>$ printenv
ENV=var
我想做这样的事情,但是失败了:
>$ $(echo ENV=var) printenv
bash: ENV=var: command not found
还有另一种通过评估命令将环境变量传递到单个子流程的方法吗?
使用env
。
env "$(echo ENV=var)" printenv
还是使用eval
但是知道如何安全地使用它。
eval "$(echo ENV=var)" printenv
在这两个命令中,无论哪种方式,都必须确保对输出进行了清理。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句