【发布时间】:2018-12-07 23:06:21
【问题描述】:
我有这个代码:
foo=bar
eval alias $foo="echo $foo"
但别名被创建为
alias bar='echo'
而不是
alias bar='echo bar'
为什么$foo 没有在别名定义中正确展开?
【问题讨论】:
-
eval alias bar="\"echo $foo\""是否按照您的工作方式工作? -
是的,确实如此!您可以将其发布为带有解释的答案,我很乐意接受。
-
从
set -x日志中可以很清楚地看到,即。在ideone.com/LNazVj(该值已扩展,但未扩展为获取别名值的参数)。