为什么在这个bash命令的括号printf和calculator函数中出现语法错误?
为什么我在这一行脚本中遇到错误为什么在这个bash命令的括号printf和calculator函数中出现语法错误?,bash,math,syntax,bc,Bash,Math,Syntax,Bc,为什么我在这一行脚本中遇到错误 printf "%.3f\n" "$(bc -l <<< ($sum / $total))" printf“%.3f\n”“$(bc-l这是因为bc-l需要作为单个字符串输入,但是($sum/$total)是不带引号的,并且被拆分为多个单词 您可以使用: printf "%.3f\n" "$(bc -l <<< "($sum / $total)")" printf“%.3f\n”“$(bc-l最好像下面这样做。这样会更清楚
printf "%.3f\n" "$(bc -l <<< ($sum / $total))"
printf“%.3f\n”“$(bc-l这是因为bc-l
需要作为单个字符串输入,但是($sum/$total)
是不带引号的,并且被拆分为多个单词
您可以使用:
printf "%.3f\n" "$(bc -l <<< "($sum / $total)")"
printf“%.3f\n”“$(bc-l最好像下面这样做。这样会更清楚
result=$(bc -l <<< ($sum / $total))
printf "%.3f\n" "$result"
result=$(bc-l更接近了,不过现在它在标准中抛出了一个错误:(standard_in)1:语法错误您使用的是bash
?当我使用sum=15;total=25;printf“%.3f\n”$(bc-l是和否。这是Hackerrank的一个问题的一部分。阅读讨论,我认为这是一个与我一起的错误问题。与问题无关。这很有效。对于您链接的问题,可以使用sum=0;total=;而read num;do[-z$total]]和&total=$num | |((sum+=num))来解决;完成result=$(bc -l <<< ($sum / $total))
printf "%.3f\n" "$result"