Hex Editors

A review of available hex editors for Linux/Unix.

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 wellcome

This list has been updated occassionaly. There are other nice lists and reviews of hex editors:

beav 1.40

beav 1.40 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.

Bless

Bless a GUI app, 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.

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.

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.

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.

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.

khexedit

khexeditVery powerful editor. Here is a feature overview from it's author:
Highly configurable document view. Displays documents in four modes. Hexadecimal, octal, binary and text only. Search and replace dialogs. Goto dialog and bookmark functionality. Pretty printing with headers and footers (in postscript). Undo/Redo operation is supported. Insert and overwrite mode operation. A document can be resized. Copy and paste of both ASCII and binary data. Multiple documents can be open simultaneously. All functions are accessible through keyboard and mouse. Support for non ASCII encoded files, eg. EBCDIC encoded files. Supports drag and drop of documents from kfm. Supports drag and drop of an open file from one editor to another. Session management. Remembers state from one session to the next.

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.

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?