HEXYL(1)(hexyl)

% 2022-12-05

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⟩

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 mail@david-peter.de ⟨mailto:mail@david-peter.de⟩.

REPORTING BUGS

Bugs can be reported on GitHub at:
    ⟨https://github.com/sharkdp/hexyl/issues⟩

COPYRIGHT

hexyl is dual-licensed under:

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

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

SEE ALSO
hexdump(1), xxd(1)