在 linux 中处理 hexdump 命令真的很困惑。 基本上我试图从/proc/device-tree 获取输出。 我尝试使用 hexdump,但结果很困惑。 我的dts包含
vvn = <0 0 2 2 0 0>;
我在/proc/device-tree 下得到了一个 proc 节点。
我尝试了以下命令。
hexdump -v -e '4/1 "%x" " "' vvn ; echo
0000 0000 0002 0002 0000 0000
hexdump -v -e '1/4 "%x" " "' vvn ; echo
0 0 2000000 2000000 0 0
hexdump -v -e '4/1 "%x "' vvn ; echo
0 0 0 00 0 0 00 0 0 20 0 0 20 0 0 00 0 0 0
我得到了不同的输出,我认为所有的输出都会相同。 任何人都可以向我解释如何使用 hexdump 的迭代计数和字节计数及其用途以及如何使用该格式吗?
最佳答案
迭代计数控制格式重复的次数。
字节数表示每次迭代将格式化多少字节。
格式字符串与printf
相同。
'4/1 "%x"""'
:迭代4次:每次用"%x"格式化1个字节,迭代完成后插入 ""
.
'1/4 "%x"""'
:迭代1次:每次用"%x"格式化4个字节,迭代完成后插入 ""
。这等于 '1/4 "%x "'
'4/1 "%x "'
:迭代4次:每次用"%x"格式化1个字节;迭代完成后,吃掉最后一个空格,不插入任何内容。
我知道为什么 hexdump 会吃掉最后一个空格 :(.
关于linux - hexdump 中的迭代次数和字节数是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37020333/