如何使用Bash将整数写入二进制文件?[重复]

如何使用Bash将整数写入二进制文件?[重复],第1张

如何使用Bash将整数写入二进制文件?[重复]

这是我能想到的:

int=65534printf "0: %.8x" $int | xxd -r -g0 >>file

现在,根据字节顺序,您可能需要交换字节顺序

printf "0: %.8x" $int | sed -E 's/0: (..)(..)(..)(..)/0: 4321/' | xxd -r -g0 >>file

示例(已解码,因此可见):

printf "0: %.8x" 65534 | sed -E 's/0: (..)(..)(..)(..)/0: 4321/' | xxd -r -g0 | xxd0000000: feff 0000          ....

这用于 无符号的 int,如果int是有 符号的并且 值是 负数 ,则必须计算两者的补数。简单的数学。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5015158.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存