如何在 bash 中将大十进制转换为十六进制?

问题描述 投票:0回答:1

我需要将一个非常大的数字转换为十六进制形式(没有空格,没有任何东西,例如 8ac7230489e80001)。使用

printf
会产生超出范围的错误。

printf '%x\n' "24267339429148234667523"

-bash: printf: warning: 24267339429148234667523: Numerical result out of range
ffffffffffffffff

我尝试了其他方法(python),但似乎它们只给出字符串输出。我仍然需要它是一个数字。 是否可以处理这样更大的数字?

bash hex decimal biginteger
1个回答
0
投票

您可以使用

bc
实用程序:

bc <<< 'obase=16;24267339429148234667523'
© www.soinside.com 2019 - 2024. All rights reserved.