bash - 将表示十六进制值的 ascii 转换为二进制数据
问题描述
我正在寻找一种将表示十六进制值的 ascii 数据转换为二进制文件的方法。详细地说,通过将十六进制值转换为字符串来记录串行端口上与连接的设备(在本例中为 GPS 接收器)的所有通信。我正在寻找一种将这些数据转换回二进制数据的方法。基本上,我可以通过运行 HxD 编辑器并通过从日志中提取的字符串来执行此操作。 2 行记录的 HxD 表示
我想做的是能够在命令行上执行此操作,而无需手动将测试复制/粘贴到十六进制编辑器。
这些行总是以 wi B562 开头,后跟值,例如 06,在这种情况下,应导致输出(表示为字符串)“µb”。
作为一个例子,我正在编辑一个包含我要转换的数据的文件,以及由 HxD 编辑器编写的结果文件。这个生成的文件可以通过 u.blox.com 提供的一个名为 u-center 的工具打开和重放。它显示正在记录的卫星信息... 输入文件log01.ublox.tmp 输出文件log01.ubx
感谢您的任何支持。- 瓦西里
解决方案
您可以使用以下命令将表示十六进制值的 ASCII 转换为二进制数据:
xxd -r -ps log01.ublox.tmp output.ubx
推荐阅读
- preg-match - 如何禁止电话字段中的重复号码,如 1111111 或 222222
- php - 使用 PHP 自动下载文件 .ZIP
- amazon-web-services - AWS Transfer Family API Gateway 身份提供商是否需要使用 Terraforms `aws_apigatewayv2_api` 或`aws_api_gateway_rest_api`?
- javascript - 使用onclick事件在div标签中附加CKEditor?
- amazon-web-services - 从本地机器设置到 api 网关的隧道
- azure - Azure 函数在本地运行,从门户运行时失败
- kubernetes - 完整的 pod 状态列表
- reactjs - 如何在 cra 中使用 Nextjs
- python - 通过 API 的 CSV - 只能连接 str
- python - 如何通过使用 python 给出条件来自动复制文件?