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 )