bash - bash shell 脚本中的负数

标签 bash shell math

我需要一些关于 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/

相关文章:

bash - 从 Google Cloud VM (Ubuntu) 在预定时间运行脚本

linux命令行使用提供的参数重命名所有文件

linux - 如何通过bash检查最新的内核版本

linux - 远程权限被拒绝/未找到路径的 SSH 本地脚本

c - 解决 n!用C(某处方程错误)

c++ - 如何计算我的数组条目条目号

bash - GOLANG 检查mongodb是否正在运行

c - 在 shell 脚本中将带引号的参数传递给 C 程序

android - adb shell screencap - "permission denied"

bash - 如何在 bash 中创建秒表?