我需要一些关于 bash 数学表达式脚本的帮助。我需要下面的表达式是 2 的 63 次方的负数,但我尝试了“”、“”、(()) 的各种组合,甚至保持正值但将其乘以 -1 但我可以'似乎语法不对。
原文表达:
kw=`expr 2^63 | bc`
给我 9223372036854775808(这是正确的)但我需要得到一个 -9223372036854775808。
我希望能够做一个 kw=expr -2^63 | bc
得到一个否定的结果,但它并不像我希望的那样直截了当。因此,我多次尝试对表达式进行不同的排列。
任何帮助将不胜感激。
最佳答案
给你:
$ kw=$(echo -2^63 | bc)
$ echo $kw
-9223372036854775808
更新
@DigitalTrauma是的,如果你在 bash
中,那么使用 bash here string更好(少一个过程,更高效):
kw=$(bc <<< -2^63)
关于bash - bash shell 脚本中的负数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20981525/