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 the ‘character area’ on the right, the “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 editors or sector editors.
There are a wide range of Linux hex editors available in the market that, to a greater extent, make a user squarely beneficial and allow them to edit binary programs.
Best Linux Hex Editors and Viewers
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.
1. Vim
Vim facilitates users in 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 distributions. 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 Vim in editing a binary file automatically in 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 and hex it according to the user’s wish.
- Hex conversion can be automated; however, knowing its usage might allow users to use it in a more versatile way.
2. Hexedit Hex Editor
Hexedit is a trustworthy binary file editor and very easy to use. This Linux hex viewer features many options, such as fast search/compare, highlighter, EBCDIC, color schemes, autofit, INS/OVR modes, bookmarks, and change tracking. Its display changer has more than seventy properties, including 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.
- Hexedit can look into memory, drives, and files based on the user’s command.
- This portable utility is easy to use and 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 allows data to be loaded from any file and viewed and edited in hex and ASCII. It works extensively to sort out problems with debugging through encoding or object code. It is also used in computer games to cheat the system by adding scores or lives to win or save the games.
Features of Ghex
- It features various phases of the 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 of various documents with diverse views using the configurable MDI.
- Capable of loading data from binary files and paves the way for displaying to edit with hex editing view.
4. Bless Hex editor
Bless is an open source hex editor that works very fast and is comfortably customizable. This free hex editor is mainly designed for the Linux platform and written with GTK. It is efficient to work with large files to a greater extent and goes well with redoing and undoing actions.
Features of Bless
- Expedite opening number windows by using a tab to perform normal functions.
- Finding files and documents allows for efficient replacement of them to complete the function.
- Bless hex editor is included with progressive level copy and paste features.
- Enables blocking devices and editing a large number of files.
- It offers as many features as you need by installing the required plugins on your device.
- It can be used for importing files using the “.txt” and “.html” format 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 for viewing values on the peak of the characters in the rows.
- Similar to a text editor, data can be navigated and edited 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.
6. wxHexEditor
“Wxhexeditor” is, to 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.
7. HexCurse
HexCurse is a hex code editor written in the C programming language that offers many features for users. It is a versatile ncurses-based hex editor that facilitates looking for decimal and hex address output. It allows users to move a file to its classified location swiftly using keyboard shortcuts and modify it.
Features of HexCurse
- Being a ncurses-based hex editing application, it expedites saving, editing, and opening files.
- 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 searches 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 very 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 are possible.
9. Dhex Hex Editor
Dhex hex code editor is used to alter discrete bytes into large files. This utility can be used in various ways because it is a ncurses program. This Linux hex viewer is separate because it has different features. It paves the way for comparing files to visualize for the users; moreover, this mode can be invoked if required.
Features of Dhex
- Dhex is an upper- and lower-case sensitive application; both characters can be used for 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 addresses; for instance, the binary base address is [-a1b -a2b]
- The search logs and marker files are used to calculate the base address, which is another essential feature.
- Create marker files that store different data that can be used later on if required.
10. Emacs
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 that the current buffer files transform into much like hex editing mode; however, it does not work well. The second step, called hexl to find a file, 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 editing mode using hexl exit mode.
- Automatically transforms a buffer mode to hexl format with “hexlify-buffer.”
- A buffer contains an address for each line displayed in hexadecimal, and it illustrates the offset into files.
- If any character is displayed with an ASCII character, that will not be printable because it is a metacharacter.
- Text can be changed in various ways by using the 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 viewing 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 users to replace actions and search and view files based on their structures.
- Perform string extractions and work with various types of data files; thus, it is tremendously user-friendly.
- A bookmark option is available with this utility; hence, specific information positions can be located.
- Users can access file information with strings, and characters are used to analyze the data frequency.
- Its interface is 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 and 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, such as illustration, block devices, multiple windows, and numerous windows.
- Facilitates binary mapping data to a C struct.
- For 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 another Linux hex editor with a “mode-less” user interface that is easy for editors to use. This utility has a button on the screen that explains how to get help. This text editor includes an integrated help system similar to 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, which 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 editor’s user interface.
14. VBdiff Hex Editor
VBdiff—Visually binary diff is a free hex editor for the Linux system that displays files in hexadecimal. One of its best characteristics is that it can open two files simultaneously and compare them. This Linux hex viewer is distinct from its features, such as its ability to 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.
15. HexCmp
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 scrolls down the data.
Features of HexCmp
- It provides features such as an info panel, synchronous scrolling, and highlighting color.
- Shows the file information in different formats.
- It is also useful for the typical user, developer, and company.
- 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 can be navigated with different blocs and files.
16. 010 Hex Editor
In most cases, the hex editor shows bytes of a file, whereas the 010 hex editor follows the hierarchical structures of a file to parse it 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 the binary file; thus, it has been branded the unequaled hex editing tool of this type.
- This is the only hex editing application on the Linux platform that supports more than 50 GB of 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 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 researchers and developers a natural choice 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.
- The sub-menu is used to group the chosen items from the plugin 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 will let you find the Python library to accomplish the binary function.
18. Kaitai Struct
Kaitai Struct hex editor is used to describe binary data structures and 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 debugged by the visualizer; moreover, it parses data correctly.
- The switch-like structure contains switchable default endianness.
- Kaitai struct hex editor can now 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.
19. MadEdit-Mod
MadEdit-Mod is another notable Linux hex editor. It includes many features, such as bloody edge enhancement, a drag-and-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 the selection of the whole line by clicking triple times, including line function enhancement.
- This free hex editor facilitates searching all in the current file and can even 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.
20. Hexinator
Hexinator is an open-source hex editor mainly used in the Linux system. It is designed for high-end users who are experienced in this context. It is developed based on a powerful parser engine to perform in-depth analysis of binary files. Because of its task-performing nature, it is considered pretty discrete.
Features of Hexinator
- Create a well-familiar grammar file responsible for storing different information based on past analysis sessions.
- It would let you take a note regarding your previous knowledge, assumptions, and comments.
- This hex code editor displays loaded binary files in well-structured and user-friendly Windows for editing 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, which enables exporting data to text or XML format.
Finally, Insight!
The above-mentioned Linux hex editors are frequently used for binary file editing. Nevertheless, all hex editors have the same purpose, and a few of them are significantly popular among programmers and developers. To some extent, many of them are very user-friendly and flexible.
Finally, if you find the article useful, please leave your comment. We will try to respond as quickly as possible. Additionally, if you find all the 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