カテゴリ: Linux基礎 更新日: 2026/08/30

hexdumpコマンドの基本!バイナリデータを16進数で表示する方法を初心者向けに解説

hexdumpコマンドの基本!バイナリデータを16進数で表示する
hexdumpコマンドの基本!バイナリデータを16進数で表示する

先生と生徒の会話形式で理解しよう

生徒

「ファイルの中身って文字じゃない場合もありますよね?それってどうやって確認するんですか?」

先生

「いいところに気づきましたね。そんなときはhexdumpコマンドを使うと便利ですよ。」

生徒

「へクスダンプって何ですか?難しそうです。」

先生

「簡単に言うと、データを16進数という形で表示する方法です。順番に見ていきましょう。」

1. hexdumpコマンドとは?

1. hexdumpコマンドとは?
1. hexdumpコマンドとは?

hexdumpコマンドは、Linuxでバイナリデータを16進数形式で表示するためのコマンドです。

通常、テキストファイルは人が読める文字で表示されますが、画像ファイルやプログラムの実行ファイルなどは「バイナリデータ」と呼ばれ、人間にはそのままでは読めません。

そこでhexdumpを使うと、データを数値に変換して確認できるようになります。

イメージとしては「暗号のようなデータを数字で見えるようにする道具」です。

2. 16進数とは?初心者向けにやさしく解説

2. 16進数とは?初心者向けにやさしく解説
2. 16進数とは?初心者向けにやさしく解説

16進数とは、0から9に加えてAからFまでを使って数を表す方法です。

普段使っている10進数は0から9までですが、16進数は0から15までを表現できます。

例えば以下のようになります。

  • 10進数の10は16進数ではA
  • 10進数の15は16進数ではF

コンピュータは内部でデータを扱うときに、このような形式をよく使っています。

3. hexdumpコマンドの基本的な使い方

3. hexdumpコマンドの基本的な使い方
3. hexdumpコマンドの基本的な使い方

まずは基本的な使い方から見ていきましょう。


hexdump sample.txt
0000000 4865 6c6c 6f20 576f 726c 640a
000000c

左側は「位置(アドレス)」、右側は「データ(16進数)」です。

この表示は、ファイルの中身を数字として確認している状態です。

4. -Cオプションで見やすく表示する

4. -Cオプションで見やすく表示する
4. -Cオプションで見やすく表示する

初心者には-Cオプションが特におすすめです。文字としても表示されるため、理解しやすくなります。


hexdump -C sample.txt
00000000  48 65 6c 6c 6f 20 57 6f  72 6c 64 0a              |Hello World.|
0000000c

右側に「Hello World」と表示されています。

このように、16進数と文字を同時に確認できるのが特徴です。

5. -nオプションで表示するサイズを制限する

5. -nオプションで表示するサイズを制限する
5. -nオプションで表示するサイズを制限する

大きなファイルをすべて表示すると見づらくなるため、一部だけ表示したい場合があります。


hexdump -n 16 -C sample.txt
00000000  48 65 6c 6c 6f 20 57 6f  72 6c 64 0a              |Hello World.|
0000000c

-nは「何バイト表示するか」を指定するオプションです。

6. -sオプションで途中から表示する

6. -sオプションで途中から表示する
6. -sオプションで途中から表示する

ファイルの途中から確認したい場合は-sを使います。


hexdump -s 6 -C sample.txt
00000006  57 6f 72 6c 64 0a                                 |World.|
0000000c

6バイト目から表示され、「World」が確認できます。

7. バイナリファイルの確認例

7. バイナリファイルの確認例
7. バイナリファイルの確認例

画像ファイルなども確認できます。


hexdump -C image.png
00000000  89 50 4e 47 0d 0a 1a 0a  00 00 00 0d 49 48 44 52
00000010  00 00 02 00 00 00 02 00  08 06 00 00 00 f4 78 d4

これはPNGファイルの先頭部分です。

「89 50 4e 47」はPNGファイル特有の識別情報です。

8. hexdumpと他のコマンドとの違い

8. hexdumpと他のコマンドとの違い
8. hexdumpと他のコマンドとの違い

似たコマンドとしてxxdodがあります。

  • hexdumpはシンプルで標準的
  • xxdは逆変換も可能
  • odはより細かい表示が可能

初心者はまずhexdumpから覚えるのがおすすめです。

9. よくある使いどころと活用シーン

9. よくある使いどころと活用シーン
9. よくある使いどころと活用シーン

hexdumpは以下のような場面で活躍します。

  • ファイルが壊れていないか確認する
  • バイナリ形式の中身を調査する
  • プログラムのデータ構造を理解する

特にエンジニアやインフラ担当者にとっては重要なコマンドです。

まとめ

まとめ
まとめ

本記事ではLinuxコマンドの中でも重要なhexdumpコマンドについて、バイナリデータを16進数で表示する基本から実践的な使い方までを丁寧に解説しました。テキストファイルだけでなく、画像ファイルや実行ファイルなどのバイナリデータを扱う場面は多く、hexdumpコマンドを理解することでLinux操作の理解が大きく深まります。 特にLinux初心者の方にとっては、普段目に見えないデータの中身を可視化できるという点で非常に有用なコマンドです。16進数という概念も最初は難しく感じるかもしれませんが、実際にコマンドを実行しながら確認することで自然と理解できるようになります。 hexdumpコマンドの基本構文はシンプルでありながら、オプションを組み合わせることで柔軟な表示が可能です。例えばCオプションを使うことでASCII文字と16進数を同時に確認できるため、データの内容をより直感的に理解できます。またnオプションで表示範囲を制限したり、sオプションで特定の位置からデータを確認することで、大きなファイルでも効率よく解析することができます。 実際の現場ではファイルの破損チェックやフォーマットの確認、バイナリ解析などでhexdumpコマンドが活躍します。特にインフラエンジニアやプログラマーにとっては、トラブルシューティングの際に役立つ重要なスキルの一つです。 hexdumpコマンドはxxdやodといった類似コマンドと比較されることもありますが、まずは標準的でシンプルなhexdumpから学ぶことでLinuxの基礎力をしっかり身につけることができます。 この記事で学んだ内容をもとに、実際にコマンドを実行しながら理解を深めていくことが重要です。Linuxコマンドの学習においては、知識だけでなく実際に手を動かして試すことが最も効果的です。 また本記事の内容は:contentReference[oaicite:0]{index=0}として確認できる内容を踏まえて整理されているため、復習しながら繰り返し読むことで理解がより確実になります。

hexdumpコマンドの基本復習


hexdump -C sample.txt
00000000  48 65 6c 6c 6f 20 57 6f  72 6c 64 0a              |Hello World.|
0000000c

表示サイズを制限する例


hexdump -n 8 -C sample.txt
00000000  48 65 6c 6c 6f 20 57 6f                          |Hello Wo|
00000008

途中から表示する例


hexdump -s 6 -C sample.txt
00000006  57 6f 72 6c 64 0a                                 |World.|
0000000c
先生と生徒の振り返り会話

生徒

hexdumpコマンドはバイナリデータを16進数で表示するためのコマンドで、普通では読めないファイルの中身を確認できるということが分かりました。

先生

その通りです。特にLinux環境ではファイルの中身を直接確認することが重要になるため、hexdumpは非常に役立つコマンドです。

生徒

Cオプションを使うと文字と16進数が一緒に表示されるので、とても分かりやすいと感じました。

先生

初心者には特におすすめのオプションです。まずは見やすい表示で理解を深めることが大切です。

生徒

nオプションやsオプションを使うことで必要な部分だけ確認できるのも便利だと思いました。

先生

その理解はとても良いです。大きなファイルを扱うときには特に重要な使い方になります。

生徒

今後はファイルのトラブルや解析のときにhexdumpコマンドを使ってみたいです。

先生

ぜひ実際に使ってみてください。Linuxコマンドは使えば使うほど理解が深まり、確実にスキルとして身につきます。

関連記事:
カテゴリの一覧へ
新着記事
New1
システム情報・プロセス管理
ps -Aオプション|すべてのプロセスを表示する
New2
ファイル・ディレクトリ操作
cp --parentsオプションの使い方|ディレクトリ構造を保持してコピーする方法を完全解説!
New3
ファイル・ディレクトリ操作
rm -fオプションとは?Linuxで存在しないファイルでもエラーを出さず強制削除する方法
New4
演算と比較
シェルスクリプトでファイル存在チェックを行う比較演算子まとめ
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
テキスト・データ処理
catコマンドとは?Linuxでファイル内容を表示・連結する基本
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
pwdコマンドとは?初心者でもわかる現在の作業ディレクトリの確認方法を解説!
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
cd ~ の使い方を完全解説!ホームディレクトリへの移動方法と初心者向けLinuxコマンド入門