hexyl - カラフルなコマンドラインヘックスビューアー チートシート
hexyl は最新のターミナルヘックスビューアー、Rust で書かれたもの。バイトをカテゴリ別にカラーコード化 — NULL、ASCII 印字可能、ASCII ホワイトスペース、その他の ASCII、非 ASCII — 構造が一目で目立ち、整列したキャラクタパネルを横に表示します。ファイルヘッダー、マジックバイト、バイナリ構造をすばやく目で確認するには xxd または hexdump より非常に読みやすく、スクリプト化可能なままで offset と length コントロール。
インストール
| プラットフォーム | コマンド |
|---|
| Cargo(全プラットフォーム) | cargo install hexyl |
| macOS(Homebrew) | brew install hexyl |
| Arch Linux | sudo pacman -S hexyl |
| Debian/Ubuntu | sudo apt install hexyl |
| Fedora | sudo dnf install hexyl |
| Windows(Scoop) | scoop install hexyl |
| Nix | nix-env -iA nixpkgs.hexyl |
基本的な使用方法
| コマンド | 説明 |
|---|
hexyl file.bin | カラーおよびキャラクタパネル付きヘックスダンプ |
hexyl -n 64 file.bin | 最初の 64 バイトのみを表示 |
head -c 256 file | hexyl | stdin からデータをパイプイン |
hexyl --help | 完全なオプションリスト |
hexyl --version | バージョン |
範囲コントロール
| オプション | 説明 |
|---|
-n, --length N | 最大 N バイトを読み込み |
-c, --bytes N | バイト数の長さのエイリアス |
-s, --skip N | 読み込み前に N バイトをスキップ(シーク) |
-r, --range A:B | バイト範囲 A から B まで読み込み |
--block-size N | -n/-s のブロックサイズを設定(例:512) |
Offset とカウントは単位と基数を受け入れます:0x1F、512、1KiB、2MiB。
表示オプション
| オプション | 説明 |
|---|
--color always|auto|never | カラー化を制御 |
--border ascii|unicode|none | ダンプの周りのボーダースタイル |
--panels N | 横に並べるヘックスパネルの数(auto で幅に合わせる) |
--no-characters | 右手のキャラクタパネルを非表示 |
--no-position | offset 列を非表示 |
--group-size N | グループあたりのバイト数(1、2、4、8) |
--base 2|8|10|16 | バイト値の数値ベース |
-p, --plain | カラーなし、ボーダーなし、position なし(xxd のような) |
カラーを読む
| カラーカテゴリ | 意味 |
|---|
薄い 0 | NULL バイト(0x00) |
| 緑 | ASCII 印字可能文字 |
| 黄色/青緑 | ASCII ホワイトスペース |
| その他の影 | その他の ASCII コントロールバイト |
| 明るい | 非 ASCII(0x80–0xFF) |
このカラー化はマジックナンバー、パディング、テキスト対バイナリ領域を即座に表示可能にします。
一般的なワークフロー
# ファイルのマジックバイト / ヘッダーを確認
hexyl -n 16 mystery.file
# 既知の offset で特定の構造を検査
hexyl -s 0x200 -n 0x40 firmware.bin
# 2つのファイルのヘッダーをすばやく比較
hexyl -n 32 a.bin; echo '---'; hexyl -n 32 b.bin
# diff またはスクリプト用 xxd スタイルプレーン出力
hexyl --plain -n 64 file.bin
# ストリームのスライスを見て
curl -s https://example.com/file | hexyl -n 128
hexyl vs クラシックツール
| 機能 | hexyl | xxd | hexdump |
|---|
| バイトカテゴリ別カラー | はい | いいえ | いいえ |
| キャラクタパネル | はい | はい | 形式で |
| 範囲/シークフラグ | はい | 限定的 | 限定的 |
| マルチパネルレイアウト | はい | いいえ | いいえ |
| プレーン/スクリプト可能モード | はい(-p) | はい | はい |
リソース