busybox 是否有一个工具可以在小端机器上将 4 字节字转储为十六进制?

busybox 是否有一个工具可以在小端机器上将 4 字节字转储为十六进制?

我正在尝试使用 busybox 将文件转储到 /sys 和 /proc 中。

我碰巧有一个带有 busybox 1.31 的嵌入式设备。

我注意到 xxd 没有小端的 -e 选项。

我也不知道如何在 od 或 hexdump 中执行此操作,因为 busybox 的选项集有限。

有任何想法吗?

不起作用的示例:

# hexdump fsl,mf-mix-wakeup-irq
0000000 c007 0000 0000 007d 0000 0000 4001 4006

# od -X fsl,mf-mix-wakeup-irq
0000000         0000c007        007d0000        00000000        40064001
0000020


这是我想要的字节顺序(来自源代码):

0x7c00000 0x7d00 0x0 0x1400640

答案1

吉尔斯给出了解决方案:

# xxd -g4 fsl,mf-mix-wakeup-irq
00000000: 07c00000 00007d00 00000000 01400640  ......}......@.@

注意各种od选项在busybox中无效:

# od -tx4 fsl,mf-mix-wakeup-irq
od: invalid option -- 't'
BusyBox v1.31.0 (2021-02-24 17:49:57 UTC) multi-call binary.

Usage: od [-aBbcDdeFfHhIiLlOovXx] [FILE]

相关内容