问题标签 [xxd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1268 浏览

bash - 如何用xxd读取指定范围内的字符?

参数 -l 表示:写入八位字节后停止。

该命令将读取范围内的字符:从 0(开始)到文件 test.txt 中每行 119 ,10 个字节。

该命令将读取范围内的字符:从 0(开始)到文件 test.txt 中每行 139 ,10 个字节。

如何使用xxd读取范围内的所有字符:从119到139?

0 投票
0 回答
398 浏览

c - 在 c 中使用 xdd 在 linux 上进行分配

我正在尝试比较位于的操纵杆文件驱动程序的最后一个值

/dev/input/js0

只是为了测试,在 linux shell 中我使用 xxd 进行十六进制转储:

我看到了我正在寻找的价值,直到这里一切正常!

我想制作 ac 代码,当该文件的最后一个字节为 1 时打印一条消息。但我不知道如何将该字节分配给一个变量,因为文件 js0 会在按下每个键时更改它的值。

这是我的代码,

但我不知道如何进行。我应该将 xxd 保存在另一个文件中并在保存的同时读取吗?如何?

0 投票
3 回答
13724 浏览

bash - 将 hexdump 转换回文本的命令

我正在使用 Catfish 查找包含某些文本的文件。找到的一些文件而不是纯文本包含一些看起来像十六进制转储的东西:

即总是 8 列,每行包含 16 个字节。上面的第一行应该是

是否有命令取消文件并打印内容?

0 投票
0 回答
299 浏览

linux - xxd - 如何在特定偏移处插入长文本

如何在特定偏移量处插入十六进制数据?超过 256 个?

我尝试了类似的东西:

如果我想在此处插入长文本或文本文件怎么办?

0 投票
1 回答
2974 浏览

hex - 如何在验证之前将十六进制签名转换为二进制签名

我需要十六进制形式的签名数据,所以我使用:

openssl dgst -sha256 -hex -sign ./id_rsa my.data > my.signature

openssl 文档指出:

无法使用 openssl 验证十六进制签名。相反,在验证之前使用“xxd -r”或类似程序将十六进制签名转换为二进制签名。资源

但是,当我尝试这样做时......

echo "$(cat my.signature)" | xxd -r -p > binary.signature

...我什么也得不到

谁能看到我做错了什么?

0 投票
2 回答
118 浏览

bash - 打包十六进制字符串时的不一致

我在使用 hexdump 和 xxd 时有一些不一致的地方。当我运行以下命令时:

它返回以下结果:

注意“c2”字符。这也发生在我跑xxd -p

当我运行相同的命令时,除了 hexdump -C:

我得到相同的结果(就包括“c2”字符而言):

但是,当我运行不带参数的 hexdump 时:

我得到以下 [正确] 结果:

出于此脚本的目的,我宁愿使用 xxd 而不是 hexdump。想法?

0 投票
1 回答
335 浏览

c++ - ofstream 将额外的零字节写入 Unix 服务器上的文件

为什么以下代码在使用 Visual C++ 的本地 Windows 机器上运行时会写入 4 个字节,而当我上传到学校的 Unix 服务器时会写入 4 个额外的 0 字节?

这是在本地使用 xxd 的结果:0104 0000

这是 Unix 服务器上的结果:0104 0000 0000 0000

这是我打开文件的模式的问题吗?

0 投票
0 回答
69 浏览

dump - 转储中的虚拟地址

当我使用 XDD 和 Radare2 时,为什么转储文件中的虚拟地址不同?

Radare2-转储

Xdd转储

第一张图显示的是 Radare2-dump,第二张图是 xdd-dump。地址并不完全不同。
xdd 是: 000007b0
radare2 是: 0x004007b0

为什么会有偏移量0x00400000

编辑:我在 Linux 上工作。

0 投票
0 回答
203 浏览

c++ - 从二进制文件中提取类似于 xxd 输出的数据

我有一个表示传感器输出的二进制文件。
在我的 bash 终端上,我可以显示文件的数据,使用xxd -b atis.es它会产生如下输出:

00000000:01000101 01110110 01100101 01101110 01110100 00100000事件
00000006:01010011 01110100 01110010100101001010100101 01100001 011011101流
0000000C:000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000来
00000012: 11110000 00000000 00000010 00000000 00000000 11101111 ......

现在我试图在我的 C++ 代码中导入这个文件,但我很难理解它是如何工作的。
我正在试验的文件可以在这里找到,并附有字节结构的相应解释。据我了解的解释(我以前从未使用过二进制文件)前 19 个字节只是一个标头,因此数据以 20 字节及以下的形式写入。所以在 C++ 中我使用了这个代码:

从这段代码中,我希望它0首先输出,因为tellg()只要我没有对 fsteam 做任何事情,就应该返回 0 作为位置,或者不?之后,我希望代码在第 20 个字节之后输出前 100 个字符。我不确定,如果seekg(20)真的跳到第 20 个字节,我无法弄清楚在这里阅读它。
我实际得到的输出是-1一些奇怪的三角形字符。
最终我的目标是将文件的数据存储在一个arraystruct带有字段t, x, y, pol. 但我想我可以自己解决这个问题,只要我对如何使用和处理二进制文件有了更多了解。
我还想知道的是为什么xxd在每个 6 字节之后将文件的标题输出分解为多行,而不是仅仅将其放在数据之前。

0 投票
1 回答
170 浏览

bash - 当管道到 xxd 时,为什么有些文本未经修改就通过了?

mysqld正在运行,前两行是一个提示,你必须是 root 才能看到它。

为什么前两行不能以二进制格式显示?
为什么只tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN显示为二进制格式?.