【发布时间】:2014-05-08 09:02:52
【问题描述】:
为什么int"$((++k))"=test 被 bash 视为命令?示例:
$ int1=test
$ int"$((++k))"=test
bash: int1=test: command not found
$
我知道我可以使用declare int"$((++k))"=test,但为什么int"$((++k))"=test 不起作用?
【问题讨论】:
-
这可以使用
eval解决。请注意,发送到eval的内容将由 shell 处理一次。 -
bash4.3(即将发布)还将支持带有declare -n的名称引用。