当我回答
this question时,我将使用${}符号,正如我在这里看到的很多次,最好是反引号.
但是,当我试过
但是,当我试过
joulesFinal=${echo $joules2 \* $cpu | bc}
我收到了消息
-bash: ${echo $joules * $cpu | bc}: bad substitution
但
joulesFinal=`echo $joules2 \* $cpu | bc`
工作正常.那我还需要做什么其他的改变呢?
“被称为命令替换,相当于$()(括号),而使用${}(大括号).
原文链接:https://www.f2er.com/bash/386835.html所以这些是平等的,意思是“解释放在里面的命令”:
joulesFinal=`echo $joules2 \* $cpu | bc` joulesFinal=$(echo $joules2 \* $cpu | bc) ^ ^ ( instead of { ( instead of {
虽然${}表达式用于变量替换.
从人bash:
Command substitution allows the output of a command to replace the
command name. There are two forms:06001
此外,“更难处理,你不能嵌套它们.见下面的评论和Why is $(…) preferred over ...
(backticks)?.