【问题标题】:Kaitai Struct dump to jsonKaitai Struct 转储到 json
【发布时间】:2021-03-16 05:27:38
【问题描述】:

我需要一个像“ksc”这样的命令行,它可以接受参数“二进制文件”和“yaml 文件”并将其转储为 json 格式。 WebIDE 通过“ExportToJson”做同样的事情,但我需要命令行中的相同功能。

谢谢

【问题讨论】:

    标签: json kaitai-struct


    【解决方案1】:

    附属免责声明:我是Kaitai Struct 维护者(请参阅我的GitHub profile)。

    我需要一个像“ksc”这样的命令行,它可以接受参数“二进制文件”和“yaml文件”并将其转储为json格式。

    使用kaitai-struct-visualizer 包中包含的实用程序ksdump。您可以通过运行gem install kaitai-struct-visualizer 来获取它from RubyGems(这将使ksdump 命令在您的PATH 上可用)。不过,您需要安装 Ruby。还需要安装kaitai-struct-compiler(有关说明,请参阅https://kaitai.io/#download)并在您的PATH 上进行设置。

    您的案例的用法如下:

    $ ksdump -f json sample.bin protocol.ksy
    

    或者,您可以拉取官方 Docker 镜像https://hub.docker.com/r/kaitai/ksv,而不是手动安装 Ruby、Kaitai Struct 编译器和可视化器,它包含所有内容。用法是这样的(自然要先get Docker):

    $ docker run -v "$(pwd):/share" --entrypoint ksdump -it kaitai/ksv -f json sample.bin protocol.ksy
    

    但是考虑到 Docker 镜像 kaitai/ksv 占用了 1.06GB(我没想到 - 我猜 Docker 镜像很容易变得臃肿),所以你可能不想通过慢速网络下载它或者有数据限制的连接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多