カテゴリ: Linuxコマンド集 更新日: 2025/12/24

head -cオプションの使い方を完全解説!初心者でもわかるバイト数指定表示の基本

head -cオプション|指定したバイト数だけ先頭を表示する
head -cオプション|指定したバイト数だけ先頭を表示する

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

生徒

「Linuxのheadコマンドで、最初の何バイトだけ表示する方法ってありますか?」

先生

「はい、それには-cオプションを使います。行ではなく、バイト単位で指定できますよ。」

生徒

「バイトって何ですか?行数とは違うんですか?」

先生

「バイトはデータの大きさを表す単位です。文字数とは必ずしも一致しないので、丁寧に説明していきますね!」

1. head -cオプションとは?

1. head -cオプションとは?
1. head -cオプションとは?

Linuxコマンドのheadは、ファイルの先頭部分を表示するためのコマンドです。通常は-nオプションで「行数」を指定しますが、-cオプションを使うと「バイト数」で指定できます。つまり、ファイルの最初から「◯バイト分」だけを抜き出して表示することができます。

head -cは、テキストファイルやバイナリファイルの一部だけを確認したいときにとても便利です。

2. バイトとは?初心者でもわかるように解説

2. バイトとは?初心者でもわかるように解説
2. バイトとは?初心者でもわかるように解説

「バイト(byte)」とは、データの大きさを表す単位で、1バイトでアルファベット1文字が表現できます。たとえば、「A」や「B」は1バイトです。ですが、日本語の「あ」や「漢字」などは、1文字でも2バイト〜3バイト以上になることがあります。

つまり、「5バイトだけ表示する」といっても、文字数とは一致しないことがあるので注意が必要です。これは、ファイルの中身を正確に一部だけ抜き出したい場面で重要になります。

3. 基本的な書き方と使い方

3. 基本的な書き方と使い方
3. 基本的な書き方と使い方

head -cオプションの基本的な使い方は、以下のように書きます。


head -c バイト数 ファイル名

例えば、「sample.txt」というファイルの先頭から10バイトだけ表示したい場合は、以下のように実行します。


head -c 10 sample.txt
こんにちは世

この結果では、10バイト分のデータが表示されます。たとえば「こ」「ん」「に」は1文字ずつで3バイト、「ち」「は」もそれぞれ3バイト近くになるので、合計して約10バイト分になる文字数だけが表示されます。

4. head -nとの違いは?

4. head -nとの違いは?
4. head -nとの違いは?

headコマンドには-nオプションもありますが、こちらは「行数」を指定するものです。例えば-n 3なら、上から3行分を表示します。

一方で-cは「バイト数」を指定するので、改行を含めたデータサイズで判断します。細かく内容を制御したいときは-c、行単位で見たいときは-nを使いましょう。

5. head -cの使用例をいくつか紹介

5. head -cの使用例をいくつか紹介
5. head -cの使用例をいくつか紹介

ここではhead -cを使った、よくあるパターンや便利な例をいくつか紹介します。

■ ファイルの先頭の数バイトだけ表示したいとき


head -c 5 data.txt
12345

データファイルの冒頭だけ確認したいときに使えます。

■ headとパイプを組み合わせて、コマンドの出力を制限


ls -l | head -c 100
合計 12
-rw-r--r-- 1 user user  20  9月 16 10:00 a.txt
-rw-r--r--

ls -lの出力を100バイトだけに制限しています。

6. head -cの注意点

6. head -cの注意点
6. head -cの注意点

-cオプションを使うと、文字が途中で切れてしまうことがあります。特に日本語(マルチバイト文字)は、1文字が複数バイトなので、途中で区切られると文字化けの原因になります。

そのため、日本語テキストを対象にする場合は、正確な文字の数ではなくバイト数であることを意識して使いましょう。

7. tail -cとの違い

7. tail -cとの違い
7. tail -cとの違い

head -cは「先頭からバイト数分だけ」表示しますが、逆に「末尾から表示したい」ときはtail -cを使います。


tail -c 10 sample.txt
るの内容です。

このように、head -ctail -cを組み合わせて使えば、ファイルの先頭や末尾を細かく確認できます。

8. head -cとddコマンドの違い

8. head -cとddコマンドの違い
8. head -cとddコマンドの違い

Linuxには同じようにバイト単位で読み取るddというコマンドもありますが、使い方が少し複雑です。

ddは入出力の制御が細かくできる一方、head -cは「とりあえず先頭を少し確認したい」ときに直感的に使えるのがメリットです。

カテゴリの一覧へ
新着記事
New1
ファイル・ディレクトリ操作
stat -Lオプションの使い方を解説|シンボリックリンクをたどってファイル情報を確認しよう
New2
ファイル・ディレクトリ操作
realpath -eオプションの使い方を解説!Linuxで存在するファイルのみ絶対パスを取得する方法
New3
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
New4
ファイル・ディレクトリ操作
touch --referenceオプションの使い方を完全ガイド!初心者でもわかるタイムスタンプのコピー方法
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
ファイル・ディレクトリ操作
rmコマンドとは?Linuxでファイルやディレクトリを削除する基本
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
cpコマンドとは?Linuxでファイルやディレクトリをコピーする基本操作を初心者向けに解説
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
Linuxのls --full-timeオプションを完全ガイド!初心者でもわかるタイムスタンプのフル表示方法