4

我想输出一个 8go 文件的 hexdump 结果。可以一块一块地做吗?如何指定有限的行数(我已经阅读了手册页,它似乎对应于 -n 长度,但它不起作用)

4

2 回答 2

9

像这样的东西?转储即字节3600到3700:

$ hexdump -n 100 -s 3600 -v -e '32/1 "%02x" "\n"' some_file

-s 3600 ; search to offset 3600 before starting dump.
-n 100 ; dump 100 bytes.
-e '32/1 "%02x" "\n"' ; dump 32 bytes pr. line and print by 1 as zero padded hex.

如果您需要偏移而不是字节,您可能不得不求助于例如 sed:

$ sed -n '3701q;3600,3700p' some_file | hexdump -ve '32/1 "%02x" "\n"'

取决于您将要使用的数据,它也是简短 C 程序的不错选择;P

于 2012-11-14T23:22:09.087 回答
0

如果您想要一个文件的十六进制转储,就像您在 debug.com 中一样,那么您可以执行以下操作:

Debug 不允许您打开大小超过 64 K 的文件,但您可以在 Android 手机上使用一些软件。Google Play 商店中可用的此类软件之一是“Hex Editor”。我也可以在那个“十六进制编辑器”中打开一个 46 MB 的文件。我可以看到十六进制转储,就像我可以在 debug.com 中看到一个文件一样

于 2017-05-08T10:35:30.213 回答