为什么我在这行脚本中遇到 ( 错误?
printf "%.3f\n" "$(bc -l <<< ($sum / $total))"
错误:
solution.sh: command substitution: line 11: syntax error near unexpected token `('
solution.sh: command substitution: line 11: `bc -l <<< ($sum / $total))"'
期望的行为是获取数值变量 $sum 和 $total 并对它们执行除法,然后将值打印到小数点后 3 位。
最佳答案
这是因为 bc -l
需要作为单个字符串输入,但 ($sum/$total)
未加引号并被拆分为多个单词。
您可以使用:
printf "%.3f\n" "$(bc -l <<< "($sum / $total)")"
关于bash - 为什么我在这个 bash 命令的括号 printf 和计算器函数中出现语法错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49636865/