A hex editor is a computer program used for editing a binary file that contains machine-readable data. It paves the way for manipulating raw binary data for a particular application. “Hex” is the short form of hexadecimal, a numerical standard format representing the binary program. A regular hex editor has three specific areas, such as ‘character area’ on the right, ‘hexadecimal area’ in the middle, and the ‘address area’ on the left. Additionally, some hex editors are designed to edit and parse sector data from the hard disk and floppy disk, frequently called disk editor or sector editor. There are far ranges of Linux hex editor available in the market; that, to a greater extent, make a user squarely beneficial and allow them to edit binary programs.
Best Linux Hex Editor & Viewer
Sometimes data might get corrupted because of the collapsed system, and writing a special program to retrieve the data would not be worthwhile. In this case, the hex editor can be used effectively. This writer has looked into a vast range of hex editors and finally picked the twenty best Linux hex editors and viewers for the ultimate users. Let’s find the gems.
Vim facilitates users editing text files with hex mode, especially for binary data. This Linux hex editor offers this facility with the external tool “xxd” that is, by default, comes with different Linux distribution. Having been used as an external tool, this hex code editor is error-prone; thus, users need to know how to run it.
(:%!xxd to convert to hex, :%!xxd -r to convert back).
Features of Vim
- Buffer writing and reading hooks facilitate the vim to edit a binary file automatically as hex mode.
- Vim’s ‘vi’ compatible mode includes many enhancements, namely merging, comparison, completion, etc.
- Vim facilitates a method to dump a binary file conveniently to hex it according to the user’s wish.
- Hex conversion can be automated; however, knowing its usage might allow users to use it more versatile way.
2. Hexedit Hex Editor
Hexedit is a trustworthy binary file editor and very easy to use it. This Linux hex viewer is featured with many options, for instance, fast search/compare, highlighter, EBCDIC, color schemes, autofit, INS/OVR modes, bookmarks, change tracking. Its display changer has more than seventy properties like dates, floats, integers, and many more.
Features of Hexedit
- Hexedit is included with many features, namely keystroke macros, background searches, disk editor, etc.
- Featured with customizable info tips, calculator, template, and more than four-gigabyte files.
- Linux hex code editor offers auto-hide tool windows and docking tool windows also.
- Hexedit can look into memory, drives, and files based on the user’s command.
- This portable utility is easy to use, and it can be used to inspect RAM to open BIOS, video BIOS, and system management BIOS.
3. Ghex – GNOME Hex Editor
Ghex is a free hex editor that paves the way of loading data from any file, and it allows viewing and editing in hex and ASCII. It works very extensively to sort out problems with debugging through encoding or object code. It is used in computer games to cheat the system by adding scores or lives to win or save the games.
Features of Ghex
- Featured with various phases of undo and redo mechanism.
- Capable of replacing and finding functions from the files.
- Used for monitoring activities between octal, binary, hexadecimal, and decimal values.
- Facilitate editing various documents with diverse views by the configurable MDI.
- Capable of loading data from binary files and paves the way of displaying to edit with hex editing view.
4. Bless Hex editor
Bless is an open source hex editor that works very fast, and it is comfortably customizable too. This free hex editor is mainly designed for the Linux platform, and it is written with GTK. It is efficient to work with large files to a greater extent and goes well with redo and undoes actions.
Features of Bless
- Expedite opening number windows by using tab to perform normal functions.
- Finding files and documents allows replacing them efficiently to complete function.
- Bless hex editor is included with progressive level copy and paste features.
- Enables blocking devices and editing a large number of files.
- Offers as many features as you need by installing required plugins on your device.
- It can be used for importing files by using the “.txt” and “.html” format that is given by default in this tool.
5. Okteta Editor
This Linux hex viewer directly works within a file for bytes, which can be modified with the Okteta editor. It is an advanced-level application designed for programmers; moreover, users who pursue files at the byte level can also use it.
Features of Okteta Editor
- Byte level data can be viewed by opening the file or dragging it into the okteta windows.
- In a traditional display of okteta hex editors, characters and values could be shown in two columns.
- Okteta paves the way of viewing values on the peak of the characters in the rows.
- Similar to a text editor, data is possible of navigating and editing appropriately and accurately.
- Create profiles that are storable and loadable; additionally, those data can be viewed with customization.
- Capable of editing numerical data, namely binary, octal, decimal, and hexadecimal.
“Wxhexeditor” is, to be a greater extent, useful for large files and devices. This application is programmed by focusing on reverse engineering large files. It is an extensively powerful tool that is compatible with various files, accessories, and TAGS, which could be a couple of exabytes.
HexCurse is a hex code editor that offers many features for the users, and it is written with C programming language. It is a versatile ncurses-based hex editor that facilitates looking for decimal and hex address output. It paves the way of moving in a file of its classified location and allows swift keyboard shortcuts and modification for the users.
Features of HexCurse
- Being a ncurses-based hex editing application, it expedites saving, editing, and opening files very merely.
- The most significant advantage of this utility is that it can edit decimal and hexadecimal files.
- Instructs the number of characters in the specific line that this tool would output.
- Specify the input and output files that have to be written and read by default in the system.
- In the current file, this Linux hex editor search for the specific string based on the user’s existing editing windows.
8. Hexer Binary File Editor
Hexer is a free Linux hex editor that is extensively used for manipulating and viewing binary files. This utility is distinct in some significant ways like it downloads the entire file; thus, block device editing is not possible. Hexer editor is included with some great features such as command-line editing with completion, multiple-level undo, and multiple buffers.
Features of Hexer
- By applying the editing command, hexer starts the editing process, and multiple command lines are possible on the command line.
- This free hex editor is much customizable; thus, the user can customize how they need it to serve their purpose.
- This utility takes the numeric argument in the command mode as a command; in this case, the decimal number has to be input.
- The current directory creates a file with .hexer for every buffer that is already visited by this application.
- Through the buffering process, if any change happens, then it is stored in that file; therefore, undo and redo is possible.
9. Dhex Hex Editor
Dhex hex code editor is used for altering discrete bytes into large files. This utility can be used in various ways because of being a ncurses program. This Linux hex viewer is separate because of having diff features. It paves the way of comparing files to visualize for the users; moreover, this mode can be invoked if it is required.
Features of Dhex
- Dhex is an upper and lower case sensitive application; both characters can be used in this utility.
- Facilitate dumping memory quickly since loaded files get a base address in this system.
- Various options such as binary, decimal, hexadecimal, and octal can be used on the base address.
- Diff mode paves the way for using two different base address; for instance, the binary base address is [-a1b -a2b]
- The search logs and marker files are used for calculating the base address, and it is another essential feature of it.
- Create marker files that store different data that can be used later on if required.
Emacs is a binary file or code editor that offers hexl mode to accomplish hex editing and viewing with a standard package. It works in two steps; the first one is current buffer files transform into much like hex editing mode; however, it does not work well. The second step is called hexl find a file, and it facilitates editing and viewing hex files.
Features of Emacs
- This Linux hex viewer is specialized for hex dump format and editing binary files with hexl mode.
- Being flexible, users can exit and return to the editing mode by using hexl exit mode.
- Automatically transforms a buffer mode to hexl format with “hexlify-buffer.”
- A buffer contains an address for each line displayed with hexadecimal, and it illustrates the offset into files.
- If any character is displayed with ASCII character, that will not be printable because of being a metacharacter.
- Text can be changed in various ways by using Emacs hex utility.
11. Jeex Hex Editor
Jeex, written with Gtk+ programming language, is an open source hex editor published under GNU public license. It is one of the best hex editors that paves the way for opening files and view with the hexadecimal format. Moreover, many operations can be performed in different formats: binary, octal, decimal, and hexadecimal.
Features of Jeex
- This free hex editor allows the users to replace action, search, and view files based on the structures.
- Perform strings extractions and working with various types of data files; thus, it is tremendously user-friendly.
- Bookmarks option is available with this utility; hence, specific information position can be located.
- Users can access file information with strings, and character is used to analyze the data frequency.
- Its interface is very user-friendly; different files can be created, opened, or read from the file option.
12. Fileobj Hex Editor
Fileobj hex editor is written in python, which provides a “vi” like interface, works with a different version of a python program. It is a ncurses-based utility; thus, the ncurses library recurs for its function in the user interface. Having “vi” features, this notepad++ hex editor is user-friendly, and all the vi commands can perform very smoothly.
Features of Fileobj
- It can replace, insert, and delete data in ASCII or hexadecimal formats.
- Different functions such as undo and redo cut and paste, partial buffer loading, and visual selection can be done with it.
- This utility is used for different support modes, as an illustration, block devices, multiple windows, and numerous windows.
- Facilitates binary mapping data to a C struct.
- To editing, it can load data from the user-specified region within a large file, and it is the best ability of it.
13. Joe Hex Editor
Joe is ncurses based another Linux hex editor included with a “mode-less” user interface that is easy to use for the editors. In this utility, there is a button on the screen written with how to get help. This text editor is included with an integrated help system similar to the WordStar and Turbo C.
Features of Joe
- There is a combination of a control key with another key for maximum functions.
- A large configuration file has been used to configure the data, and it is hugely customizable.
- Mostly used files and formats along with the color syntax are compatible with this application.
- MS-DOS editor can be reminiscent of the user interface of the editor.
14. VBdiff Hex Editor
VBdiff – Visually binary diff is a free hex editor for the Linux system that displays files in hexadecimal. One of the best characteristics is that it can open two files simultaneously and compare these two files. This Linux hex viewer is distinct from its features, like it can work with large files.
Features of VBdiff
- A sub-module is used by this repository to pull the free get App package that allows having all the necessary tools.
- It is a little challenging to get started compared with the common Git repository.
- Perl date format and template toolkit are required to build the documentation in this hex editor utility.
- This utility comes with the package; however, it can be downloaded later if it is not there.
- VBdiff keeps balance with the files in case of adding or deleting bytes with one file.
The HexCmp program has been introduced with the Fairdell software that features a convenient hex editor and application of binary file comparison. It works in a versatile way like it can compare the file in binary formats and edit and modify the file as a hex editor. Comparison takes place on the fly, and it also scrolls down the data.
Features of HexCmp
- Provides features such as info panel, synchronous scrolling, and highlighting color.
- Shows the file information in different formats.
- Useful for the typical user, developer, and companies too.
- Performs real-time comparison based on the current part, not full files.
- While the comparison is happening, it shows on the display screen; thus, the user’s time gets saved.
- It supports large files up to 4 GB, and it can be navigated with different existing blocs and files.
16. 010 Hex Editor
In most cases, hex editor shows bytes of a file, whereas 010 hex editor follows hierarchical structures of a file to parse into it by using a binary template. The binary template is more accessible than the traditional hex editing mode.
Features of 010 Hex Editor
- 010 can edit any size of binary files; thus, it has been branded the unequaled hex editing tool among this type.
- This is the only hex editing application on the Linux platform that supports more than 50 GB files.
- Featured with scripting, powerful editing, and unlimited undo tools.
- Edits different formats of files such as C/C++ source code, Unicode and UTF-8 files, text files, XML, HTML, etc.
- It can Find and fix problems with flash drives, CD-ROMs, hard drives, memory keys, etc.
- This hex editor can investigate and modify memory from processes.
17. Binary Ninja
Binary Ninja is written in python and has been published under the GPLv2 license. The specialty of the binary ninja is that it works in the reverse engineering process. There was no reverse engineering platform until it was published. It has given a natural choice for the researchers and developers to go through the reverse engineering platform.
Features of Binary Ninja
- Offers a synopsis of the graph view to overview and analyze the data of a current given function.
- Directly from the graph, it facilitates typing structure elements and renaming as an improvement process.
- Sub-menu is used to group the chosen items from the plugins register menu; thus, it is easier to accomplish it.
- Many improvements have taken place in terms of PE analysis and PE parser.
- The log is placed in the address, and reports can be watched by clicking to navigate the address.
- This Linux hex viewer would let you find the python library to accomplish the binary function.
18. Kaitai Struct
Kaitai Struct hex editor is used for describing binary data structures, and it is a declarative language program. Different data structure formats, namely network stream packet formats and binary file formats, are kept in the memory or files. Once a file is described, then it complies with a compiler in this system.
Features of Kaitai Struct
- Describe a file by using a .ksy file; thus, it is pretty distinct in its function.
- A specific format gets debug by the visualizer; moreover, at the same time, it parses data correctly.
- The switch-like structure is contained switchable default endianness.
- Kaitai struct hex editor now can handle all the included and import languages without any duplicity.
- Python language has been used with essential docstring support, and the real-time error message is shown accurately.
MadEdit-Mod is another mentionable Linux hex editor. It includes many features such as bloody edge enhancement, drag-drop option, and so on. It works in a continuous process from mardown to html to plain text.
Features of MadEdit
- Capable of printing bookmark work with content. Moreover, it can highlight words.
- This Linux hex viewer allows selecting the whole line by clicking triple times, including line function enhancement.
- This free hex editor facilities searching all in the current file, and even it can replace all in all opened documents.
- In terms of column mode, it can fill up a column automatically when rows are selected for the functions.
Hexinator is an open source hex editor that is used mainly in the Linux system. It is designed by focusing on high-end users who are pretty experienced in this context. It is developed based on the powerful parses engine to have in-depth analysis for the binary files. It is believed pretty discrete because of its task-performing nature.
Features of Hexinator
- Create a well familiar grammar file that is responsible for storing different information based on past analysis sessions.
- It would let you take a note regarding your previous knowledge, assumption, and comments.
- This hex code editor displays loaded binary files in well-structured and user-friendly windows to edit them.
- A search function that has been integrated with this application allows users to locate a text quickly.
- All the data can be navigated within the file and enables exporting data to text or XML format.
Finally, The Insight
The above-mentioned Linux hex editors are frequently used for binary file editing. Nevertheless, all the hex editors have the same purpose, and a few of them are significantly popular among the programmers and developers. To some extent, many of them are very user-friendly and flexible to use to serve the purpose.
Finally, I would say if you find the article is useful, please leave your comment. We will try to be responsive as quickly as possible. Additionally, if you find all the given information helpful to others, please do not forget to share it.
Wrong URL for fileobj hex editor. It’s a forked repository.
The real upstream is https://github.com/kusumi/fileobj