如何编辑unix系统上的二进制文件

在Windows机器上,有许多第三方编辑器可以编辑二进制文件。 我相信那里应该有一些在* nix系统中的similer buildin。 任何想法如何编辑unix上的二进制文件?

您也可以尝试ghex2 GNOME实用程序。 这给你一边自动hexASCII,以及在底部的各种字符/整数解码。 ghex2 http://kmbrandt.googlepages.com/hexeditor.jpg

在vim中你可以input:%!xxd把它变成一个hexeditor。 :%!xxd -r返回到正常模式。 xxd在vim安装中发货。

这里有关于用vim编辑二进制文件的一些说明(归结为:设置二进制文件以避免麻烦,只使用“R”或“r”命令来改变文本,不要删除字符)。

如果您是Emacs粉丝,请参阅这里了解如何使用Emacs编辑二进制文件。

在Linux / Unix上有更多的hexeditors。

我在Ubuntu上使用hexedit

 sudo apt-get install hexedit 

你可以检查维基百科 。

我更喜欢BIEW 。

保佑是一个高品质,function齐全的hex编辑器。

它是用mono / Gtk#编写的,其主要平台是GNU / Linux。 但是,它应该能够在单声道和Gtk#运行的每个平台上运行而没有问题。 主要function祝福目前提供以下function:

  • 高效编辑大型数据文件和块设备。
  • 多级撤消 – 重做操作。
  • 可定制的数据视图。
  • 快速的数据在屏幕上呈现。
  • 多个标签。
  • 快速查找和replace操作。
  • 一个数据转换表。
  • 高级复制/粘贴function。
  • select模式的高亮显示在文件中匹配。
  • 基于插件的体系结构。
  • 数据导出到文本和HTML(其他与插件)。
  • 按位操作数据。
  • 一个全面的用户手册。

http://home.gna.org/bless/复制而来;

我曾经使用bvi 。

我正在开发hex来克服:%!xxdbvi的限制。

hexvi

特征

  • 类似vim的键绑定和命令
  • 去具体的抵消
  • 插入,replace,删除
  • search东西(PCRE正则expression式)
  • 一切都是命令,可以用hexvirc来映射
  • 配色scheme
  • 支持大文件
  • 支持多个文件(通过标签)
  • Python所以入门级别应该低于C的
  • CLI通过和通过

缺点

  • 截至2016年3月,这是阿尔法function缺失,但我正在努力:
    • 文件保存
    • 撤销重做
    • 命令历史
    • 视觉select
    • 手册页
  • 没有自动完成

英属维尔京群岛

特征

  • 类似vim的键绑定和命令
  • 去具体的抵消
  • 插入,删除,replace
  • search的东西(文本和hex)
  • 撤销重做
  • CLI通过和通过

缺点

  • 关于它的vimfunction – 不幸的是,它只能理解最基本的东西,在这方面肯定需要更多的爱(例如:不明白:wq ,但是理解:w:q
  • 没有任何视觉select的支持
  • 没有标签/分屏支持
  • 经常崩溃
  • 不支持大文件
  • 没有命令历史
  • 没有自动完成

我喜欢KHexEdit ,它是KDE的一部分

它的“Windows风格”用户界面对于大多数人来说可能相当快速学习(与Vim或Emacs相比:)

有轻量级的二进制编辑器,检查hexedit。 http://www.linux.org/apps/AppId_6968.html 。 我试图用它来编辑至less在Linux中的ELF二进制文件。

我做了wxHexEditor,它是开源的,用C ++ / wxWidgets GUI库编写,甚至可以打开exabyte大小的磁盘!

http://wxhexeditor.sf.net

你试一试。

作为变种,你可以使用radare2 :

 > r2 -w /usr/bin/ls [0x004049d0]>V [0x004049d0 14% 1104 (0x0:-1=1)]> x @ entry0 - offset - | 0 1 2 3 4 5 6 7 8 9 ABCDEF| 0123456789ABCDEF 0x004049d0 |31ed 4989 d15e 4889 e248 83e4 f050 5449| 1.I..^H..H...PTI 0x004049e0 |c7c0 103a 4100 48c7 c1a0 3941 0048 c7c7| ...:AH..9A.H.. 0x004049f0 |202a 4000 e877 dcff fff4 660f 1f44 0000| *@..w....f..D.. 0x00404a00 |b807 e661 0055 482d 00e6 6100 4883 f80e| ...a.UH-..aH.. 0x00404a10 |4889 e576 1bb8 0000 0000 4885 c074 115d| H..v......H..t.] 0x00404a20 |bf00 e661 00ff e066 0f1f 8400 0000 0000| ...a...f........ 0x00404a30 |5dc3 0f1f 4000 662e 0f1f 8400 0000 0000| ]...@.f......... 0x00404a40 |be00 e661 0055 4881 ee00 e661 0048 c1fe| ...a.UH....aH. 0x00404a50 |0348 89e5 4889 f048 c1e8 3f48 01c6 48d1| .H..H..H..?H..H. 0x00404a60 |fe74 15b8 0000 0000 4885 c074 0b5d bf00| .t......H..t.].. 0x00404a70 |e661 00ff e00f 1f00 5dc3 660f 1f44 0000| .a......].f..D.. 0x00404a80 |803d c19b 2100 0075 1155 4889 e5e8 6eff| .=..!..u.UH...n. 0x00404a90 |ffff 5dc6 05ae 9b21 0001 f3c3 0f1f 4000| ..]....!......@. 0x00404aa0 |bf10 de61 0048 833f 0075 05eb 930f 1f00| ...aH?.u...... 0x00404ab0 |b800 0000 0048 85c0 74f1 5548 89e5 ffd0| .....H..t.UH.... 0x00404ac0 |5de9 7aff ffff 662e 0f1f 8400 0000 0000| ].z...f......... 0x00404ad0 |488b 0731 d248 f7f6 4889 d0c3 0f1f 4000| H..1.H..H.....@. 

有关如何在视觉模式下工作的详细信息,请阅读此处

对于小的变化,我使用了hexedit:

http://rigaux.org/hexedit.html

简单但快速和有用。

我已经有了wxHexEditor的良好经验…只要确保你是hex编辑一个驱动器,你通过菜单

 Devices -> Open Disk Device -> SCSI Disk Drive Partition #_N_