linux - hexdump 中的迭代次数和字节数是多少?

标签 linux binaryfiles hexdump hex-editors

在 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/

相关文章:

c++ - 有没有可以为 ubuntu 编译代码的在线、基于 html/flash/js 的免费 C++ 编辑器?

java - 优化JAVA中传递文件解析的方式

c - 应用程序崩溃,但我不明白原因

c++ - 写入二进制文件时空格过多

java - 如何构建匹配十六进制数字的正则表达式?

linux - 如何在Linux命令行的find命令中使用-regex

clock_nanosleep 不工作?

ios - 如何从 Hexdump 字符串中创建 NSData?

c - 为什么我在二进制文件中找不到 int 值

java - Interprolog 和 SWI-Prolog