【问题标题】:Binary file edit in Win CMDWin CMD 中的二进制文件编辑
【发布时间】:2020-08-23 03:09:09
【问题描述】:

如何在 Win CMD 中分割或编辑二进制文件?
我在 Win 10 x64 上,没有 DEBUG 实用程序

例如。用0d0a 替换所有0a 或更改某个字节偏移处的字节值?

【问题讨论】:

  • 您会考虑使用 PowerShell 吗?它也是 Windows 命令行...排序有点 :)
  • Powershell 是一个由cmdletsproviders 组成的框架,严重依赖于.NET,命令名称很长,需要更多时间来键入,例如。 Get-ChildItem 与 CMD 中的 dir 相比,cmdlet 的概念类似于 CMD 中的外部实用程序,在这种情况下,我宁愿编写一个 VBScript 来补充 CMD 中缺少的功能。 Win 10 近来带有 Ubuntu Bash,并且 Bash 已经支持二进制文件编辑一段时间了,xxdodhexdump。这是启用它的指南:techgenix.com/bash-on-windows-10

标签: windows file command-line binary edit


【解决方案1】:

是的,debug 是一个“旧”的 DOS 命令(可能直到 WindowsXP 左右才出现)。我不知道在 Windows 10 下操作二进制文件的任何默认方法。
您需要找到可以提供所需功能的第三方工具。现在我没有任何提示给你,在哪里可以找到一个或哪一个效果最好。请自行尝试网络搜索。

但是,如果没有紧急需要使用批处理文件,您可以查看一些可视化工具。比如HxD。一个免费的、多功能的 Windows 十六进制编辑器。它应该带有可能适合您的工作的查找/替换功能。

【讨论】:

  • 工作计算机不允许下载或安装软件。我们被 IT 部门的遗留物困住了。安装。在他们在这里升级计算机之前,我曾经debug。 Powershell 也被禁用,但 CMD现在仍然可以工作
【解决方案2】:

fc /b 执行与certutil -encodehex -f <in> <out> 12 类似的功能。

生成的 hex 文件随后可以通过常用批处理命令进行操作(编辑/处理),然后以二进制形式写回磁盘,就像 HxD

生成的(或者说是中间的)文件中的每个字符都是一个半字节,可以成对处理以反映当前二进制文件编码的完整字节。

要替换字符,请执行字符串搜索/替换。
对于偏移量,搜索并替换为 for 循环。
要拆分二进制文件,解析到所需的字符/偏移量,写入部分文件,然后解析下一个字符长度。继续,直到整个文件被解析和拆分。

【讨论】:

    猜你喜欢
    • 2020-03-21
    • 1970-01-01
    • 1970-01-01
    • 2010-12-27
    • 2018-11-08
    • 2019-10-22
    • 2019-04-27
    • 2013-06-06
    • 1970-01-01
    相关资源
    最近更新 更多