Hex Editors for Lin/unix

Around ca. 2006 I needed a hex editor really badly. Back then only a few and really few usable ones were available. This page is here to spare others my search time. Your feedback is very welcome.

This list gets updated every now and then. There are other nice lists and reviews of hex editors:

beav 1.40

beav 1.40(version maintained by Debian)(another review) lacks the possibility to adjust the number of displayed colums of data. Has absolutely fantastic key-bindings (I’m guessing they’re Emacs like key-bindings) so a non-Emacs user is sure to wreck the edited file all the time if he doesn’t pay attention to every keystroke he’s making. I redefined up, down, left, right, page up, page down by calling help with Esc-? and then Esc-K for the bindings and then Ctrl-X, Ctrl-W to write the bindings into the .beavrc file. The other usefull key-combinations are Ctrl-X, P to switch the window you’re in, Ctrl-X, G to jump to certain a byte, Esc-. to set a mark and Crtl-W to delete a region from the mark up to the cursor.

Bed 0.0.5

Bed 0.0.5 I couldn’t compile it and the executable segfaulted. So untested.

beye/biew 6.1.0

beye 6.1.0 You can find a more detailed review here.

Binary Ninja

Binary Ninja Is a commercial product, haven’t had a look at it.

Bless

Bless a GUI app, writte in mono. Looks really nice and fully featured. Untested.

bvi 1.3.0

bvi 1.3.0 allows inserting and deleting bytes. Has vi style key-bindings. Can also edit block special files. Permits partial editing of files.

dhex 0.6.9

dhex 0.6.9 Haven’t had a look at that editor.

fb

fb binary file viewer, editor, and manipulator. To edit files, one has to make a dump first and then edit them in a “real” editor. Untested.

fm

fm Just had a short look at it. Looks fine, supports cursor keys ;-). Doesn’t have adjustable displayed colums/rows.

GHex

GHex Has 2 column hex-numbers - text. Looks good. Untested.

GNU poke

GNU poke New kid on the block. Has received praise from well known hackers, so should be good. Untested.

HexCurse

HexCurse Untested … is a versatile ncurses-based hex editor written in C that provides the user with many features. It currently supports searching, hex, and decimal address output, jumping to specified locations in a file, and quick keyboard shortcuts to commands. month: “2006/09” year: “2006”

hexdump

hexdump only a hex dumper.

HexEd

HexEd available in a terminal and a X version - you might want to check whether there’s a newer version available. Can’t do copy/paste/delete operations that change the size of the file. Is able to change the number of displayed columns, so that you can adjust it to the structure of the edited file. Since the X-version of HexEd crashed a lot, I fetched the terminal version of it. Fortunately it knows about your terminal settings so you can go into X open a terminal adjust it. You have to press F5 (‘Zoom’?!) to make the editor adjust to you r terminal.

hexedit 1.0.0

hexedit 1.0.0 doesn’t allow changing rows/colums. Doesn’t allow copy/paste/delete that alter the size of the file. Has got anti-standart key-bindings, but is nice and fine to use. in ASCII. Untested.

Hexel 0.0.2

Hexel 0.0.2 is an advanced hex editor for the console. It supports insertion/erasure/overwrite, undo/redo, multi-buffer/shared-buffer, multi-window, bin/oct/hex/asc, and an x86 instruction decoder.

Hexer

Hexer an editor written in C#, haven’t had a look at it.

Hexinator

Hexinator looks like a very powerful hex editor. It is not open source software (no code available) but it’s gratis (at the time of writing).

hview

hview is a Curses-based hex editor designed to work with large (600+MB) files as quickly and with as little overhead as possible. Untested.

hyx

hyx is a minimalistic (< 2300 lines of C) vim-like hex editor. It can display ASCII with colors, insert/replace/delete, copy/paste, undo/redo, and search. Untested.

Kaitai Struct

Kaitai Struct seems to be a framework for binary data analysis. Untested.

LDE

LDE is a disk editor.

mcedit

mcedit from mc. Doesn’t have 2 column hex-number - text display.

muhex

muhex is part of the mulinux distribution. Type ‘muhex filename’, and a hex dump of filename is piped to an editor. You can only edit the hex field, (the offset and text fields are considered comments), but you can add or delete bytes, and do whatever else the editor can do, like cut and paste, etc. Edit done, this is piped back to ‘hexd’ (mu’s hex dump program) which turns it into a file.

It’s a kludge, but it easily fits on a rescue floppy; the ‘muhex’ shell script is only 553 bytes, just a wrapper for ‘hexd’ (4408 bytes) and an editor.

[N] Curses Hexedit

**[N] Curses Hexedit**. Seems to be a good and useful editor. Has some extra nice functionality, see the infos taken from it’s homepage below. Curses Hexedit is a full screen hex editor using the curses, ncurses , or pdcurses library. Editing and Viewing disks in Linux and OpenBSD. Allows Inserting and Deleting bytes from the file. Highlights changes in the file in bold. Fast boyer-moore string and byte searches. Undo - keeps track of all changes, reverting back to original always possible. Start of a base conversion/calculator utility built in.

Okteta

Okteta. Ex “khexedit”. Very powerful GUI editor. Untested.

vche 1.6.4

vche 1.6.4 is very nice and easy to use. Not able to copy/paste. Does support differnt numbers of colums/rows.

wxHexEditor

wxHexEditor 0.2.0 Beta is nice, fully featured, has a GUI, and can edit very large filed. However v0.2 segfaulted for me once and the search pop up window is modal.

xvi

xvi, the grandfather of editors (born ca.1985).

Afterthought

Offtopic: The linux world is lacking comparative software analysis. There should be a site where different programms that do the same task are listed and compared. Ideal would be if every page could be maintained by a different person that is interested in the stuff, so it can keep up with the news. Do you know of such a site?

Thanks

Thanks a lot to @F_84_5 for many updates to this page and to the biew review.