Reference

hexyl(1)

a command-line hex viewer

NAME

hexyl - a command-line hex viewer

SYNOPSIS

hexyl [OPTIONS] [FILE]

DESCRIPTION

hexyl is a simple hex viewer for the terminal. It uses a colored output to distinguish different categories of bytes (NULL bytes, printable ASCII characters, ASCII whitespace characters, other ASCII characters and non-ASCII).

POSITIONAL ARGUMENTS

FILE

The file to display. If no FILE argument is given, read from STDIN.

OPTIONS

-n, --length N

Only read N bytes from the input. The N argument can also include a unit with a decimal prefix (kB, MB, ..) or binary prefix (kiB, MiB, ..), or can be specified using a hex number.

Examples:
Read the first 64 bytes:

$ hexyl --length=64

Read the first 4 kibibytes:

$ hexyl --length=4KiB

Read the first 255 bytes (specified using a hex number):

$ hexyl --length=0xff

-c, --bytes N

An alias for -n/--length.

-l N

Yet another alias for -n/--length.

-s, --skip N

Skip the first N bytes of the input. The N argument can also include a unit (see --length for details). A negative value is valid and will seek from the end of the file.

--block-size SIZE

Sets the size of the block unit to SIZE (default is 512).

Examples:
Sets the block size to 1024 bytes:

$ hexyl --block-size=1024 --length=5block

Sets the block size to 4 kilobytes:

$ hexyl --block-size=4kB --length=2block

-v, --no-squeezing

Displays all input data. Otherwise any number of groups of output lines which would be identical to the preceding group of lines, are replaced with a line comprised of a single asterisk.

--color WHEN

When to use colors. The auto-mode only displays colors if the output goes to an interactive terminal.

Possible values:
•

always (default)

•

auto

•

never

--border STYLE

Whether to draw a border with Unicode characters, ASCII characters, or none at all.

Possible values:
•

unicode (default)

•

ascii

•

none

-o, --display-offset N

Add N bytes to the displayed file position. The N argument can also include a unit (see --length for details). A negative value is valid and calculates an offset relative to the end of the file.

-h, --help

Prints help information.

-V, --version

Prints version information.

ENVIRONMENT VARIABLES

hexyl colors can be configured via environment variables. The variables used are as follows:
•

HEXYL_COLOR_ASCII_PRINTABLE: Any non-whitespace printable ASCII character

•

HEXYL_COLOR_ASCII_WHITESPACE: Whitespace such as space or newline (only visible in middle panel with byte values)

•

HEXYL_COLOR_ASCII_OTHER: Any other ASCII character (< 0x80) besides null

•

HEXYL_COLOR_NULL: The null byte (0x00)

•

HEXYL_COLOR_NONASCII: Any non-ASCII byte (> 0x7F)

•

HEXYL_COLOR_OFFSET: The lefthand file offset

The colors can be any of the 8 standard terminal colors: black, blue, cyan, green, magenta, red, yellow and white. The “bright” variants are also supported (e.g., bright blue). Additionally, you can use the RGB hex format, #abcdef. For example, HEXYL_COLOR_ASCII_PRINTABLE=blue HEXYL_COLOR_ASCII_WHITESPACE=“bright green” HEXYL_COLOR_ASCII_OTHER=“#ff7f99”.

NOTES

Source repository:

⟨https://github.com/sharkdp/hexyl⟩\c

EXAMPLES

Print a given file:

$ hexyl small.png

Print and view a given file in the terminal pager:

$ hexyl big.png | less -r

Print the first 256 bytes of a given special file:

$ hexyl -n 256 /dev/urandom

AUTHORS

hexyl was written by David Peter ⟨[email protected]⟩\c .

REPORTING BUGS

Bugs can be reported on GitHub at:

⟨https://github.com/sharkdp/hexyl/issues⟩\c

COPYRIGHT

hexyl is dual-licensed under:
•

Apache License 2.0 (⟨https://www.apache.org/licenses/LICENSE-2.0⟩\c )

•

MIT License (⟨https://opensource.org/licenses/MIT⟩\c )

SEE ALSO

hexdump(1), xxd(1)

History

--block-size since Debian 11 (Bullseye); --border since Debian 11 (Bullseye); --bytes since Debian 11 (Bullseye); --display-offset since Debian 11 (Bullseye); --no-squeezing since Debian 11 (Bullseye); --skip since Debian 11 (Bullseye); -c since Debian 11 (Bullseye); -l since Arch Linux 2026-11-01; -o since Debian 11 (Bullseye); -s since Debian 11 (Bullseye); -v since Debian 11 (Bullseye).