Posted on September 7th, 2006 by tpo
A review of available hex editors for Linux/Unix.
Hex Editors for Lin/unix
A while ago 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.
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.
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.
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?