在 Bash 中,将 bc 传递给变量对我来说不合适
Passing bc into a variable isn't working right for me in Bash
我想我快疯了,我有一个不同的脚本,它可以正常工作,可以将 bc 的输出传递给一个变量,但这个我就是无法工作。
相关的代码是这样的:
PERCENT_MARKUP=".5"
$percentonumber=$(bc -l <<<"$PERCENT_MARKUP/100")
echo "Percent to number = $percentonumber"
$numbertomultiply=$(bc -l <<<"$percentonumber + 1")
echo "Number to multiply = $numbertomultiply"
$MARKUP=$(bc -l <<<"$buyVal * $numbertomultiply")
#$MARKUP=$(bc -l <<<"$buyVal * (1+($PERCENT_MARKUP/100))")
echo "Markup = $MARKUP"
最初,我只有倒数第二行当前被注释掉了,但我将其分解以尝试进行故障排除。
我在尝试 运行 时遇到的错误是:
./sell_zombie_brains: line 65: =.00500000000000000000: command not found
其中 .0050000000000000 被 bc 的输出替换。我什至在文件中的多个点尝试了以下内容,包括在 #!/bin/bash 之后使用和不使用 -l
$test=`bc -l <<<"1"`
echo "$test"
echo
$test=$(bc -l <<<"1")
echo "$test"
echo
$test=$(echo "1"|bc -l)
echo "$test"
echo
每个输出 ./sell_zombie_brains: line 68: =1: command not found
我真的无计可施了。我不知道我在这里错过了什么。任何关于它为何以这种方式表现的见解都将受到赞赏。
您不能使用印记 $
:
来分配变量
而不是
$percentonumber=$()
是
percentonumber=$()
如果您是 bash 初学者,一些好的开始学习指南:
https://whosebug.com/tags/bash/info
FAQ
Guide
Ref
bash hackers
quotes
Check your script
并避免人们建议说通过 tldp.org 网站学习,tldp bash 指南 - 特别是 ABS)已经过时,在某些情况下完全错误。 BashGuide and the bash-hackers' wiki 更可靠。
我想我快疯了,我有一个不同的脚本,它可以正常工作,可以将 bc 的输出传递给一个变量,但这个我就是无法工作。
相关的代码是这样的:
PERCENT_MARKUP=".5"
$percentonumber=$(bc -l <<<"$PERCENT_MARKUP/100")
echo "Percent to number = $percentonumber"
$numbertomultiply=$(bc -l <<<"$percentonumber + 1")
echo "Number to multiply = $numbertomultiply"
$MARKUP=$(bc -l <<<"$buyVal * $numbertomultiply")
#$MARKUP=$(bc -l <<<"$buyVal * (1+($PERCENT_MARKUP/100))")
echo "Markup = $MARKUP"
最初,我只有倒数第二行当前被注释掉了,但我将其分解以尝试进行故障排除。
我在尝试 运行 时遇到的错误是:
./sell_zombie_brains: line 65: =.00500000000000000000: command not found
其中 .0050000000000000 被 bc 的输出替换。我什至在文件中的多个点尝试了以下内容,包括在 #!/bin/bash 之后使用和不使用 -l
$test=`bc -l <<<"1"`
echo "$test"
echo
$test=$(bc -l <<<"1")
echo "$test"
echo
$test=$(echo "1"|bc -l)
echo "$test"
echo
每个输出 ./sell_zombie_brains: line 68: =1: command not found
我真的无计可施了。我不知道我在这里错过了什么。任何关于它为何以这种方式表现的见解都将受到赞赏。
您不能使用印记 $
:
而不是
$percentonumber=$()
是
percentonumber=$()
如果您是 bash 初学者,一些好的开始学习指南:
https://whosebug.com/tags/bash/info
FAQ
Guide
Ref
bash hackers
quotes
Check your script
并避免人们建议说通过 tldp.org 网站学习,tldp bash 指南 - 特别是 ABS)已经过时,在某些情况下完全错误。 BashGuide and the bash-hackers' wiki 更可靠。