カテゴリ: Linuxコマンド集 更新日: 2026/03/22

sortコマンドの使い方を完全ガイド!初心者でもわかるLinuxでテキストやデータを並べ替える基本

sortコマンドとは?Linuxでファイルやテキストを並べ替える基本
sortコマンドとは?Linuxでファイルやテキストを並べ替える基本

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

生徒

「Linuxでファイルの中身を順番に並べ替えたいときって、どうすればいいんですか?」

先生

「そんなときはsortコマンドを使います。文字や数字をルールに従って並べ替えられますよ。」

生徒

「黒い画面で並べ替えって、なんだか難しそうです…」

先生

「大丈夫です。紙に書いたメモを名前順に並べる感覚で使えます。一緒にゆっくり見ていきましょう。」

1. sortコマンドとは?

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

sortコマンドは、Linuxでファイルやテキストの行を並べ替えるための基本コマンドです。ログファイル、名簿、設定ファイル、CSVデータなど、行がたくさん並んだテキストを整理したいときに使われます。

Windowsでいうと、表計算ソフトで「昇順」「降順」を選ぶ操作に近いです。ただし、sortはターミナル(文字だけで操作する画面)で命令を入力します。その代わり、大量のデータでも一瞬で処理できるのが特徴です。

2. 並べ替えの前に知っておきたい「行」と「文字」

2. 並べ替えの前に知っておきたい「行」と「文字」
2. 並べ替えの前に知っておきたい「行」と「文字」

Linuxのテキストファイルは、「行(ぎょう)」の集まりでできています。Enterキーで区切られた1行ずつを、上から下へ順番に並べています。

sortは、この1行ごとに並べ替えを行います。文字は基本的に、アルファベット順(A→Z)や数字の小さい順で比較されます。

たとえば、「apple」「banana」「cherry」という3行があれば、辞書順に並びます。これは国語辞典で言葉を探す感覚と同じです。

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

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

まずは一番シンプルな使い方から見てみましょう。次のようなファイルがあるとします。


cat fruits.txt
banana
apple
cherry

このファイルを並べ替えるには、次のように入力します。


sort fruits.txt
apple
banana
cherry

何もオプションをつけない場合、文字の昇順(小さい→大きい)で並び替えられます。元のファイルは変更されず、結果だけが画面に表示される点も安心ポイントです。

4. 逆順に並べたいとき(降順)

4. 逆順に並べたいとき(降順)
4. 逆順に並べたいとき(降順)

並び順を逆にしたいときは、-rオプションを使います。rは「reverse(逆)」の意味です。


sort -r fruits.txt
cherry
banana
apple

これで、アルファベットの後ろから前へ並びます。成績表を高い順に見たいときなど、降順はよく使われます。

5. 数字として正しく並べ替える方法

5. 数字として正しく並べ替える方法
5. 数字として正しく並べ替える方法

数字が書かれたファイルをそのままsortすると、文字として比較されます。そのため「10」が「2」より前に来ることがあります。


cat numbers.txt
1
10
2

sort numbers.txt
1
10
2

数字として正しく並べ替えたい場合は、-nオプションを使います。


sort -n numbers.txt
1
2
10

-nは「numeric(数値)」の略で、初心者でも覚えやすい重要オプションです。

6. 重複している行をまとめたいとき

6. 重複している行をまとめたいとき
6. 重複している行をまとめたいとき

同じ行が何度も出てくるデータを整理したい場合があります。そんなときは、-uオプションを使います。


cat colors.txt
red
blue
red
green

sort -u colors.txt
blue
green
red

-uは「unique(重複しない)」という意味です。名簿や一覧データの整理でとても便利です。

7. 特定の列を基準に並べ替える

7. 特定の列を基準に並べ替える
7. 特定の列を基準に並べ替える

空白で区切られたデータでは、「何列目を基準に並べるか」を指定できます。これには-kオプションを使います。


cat score.txt
Alice 80
Bob 95
Carol 70

2列目(点数)で数字順に並べ替えてみます。


sort -k 2 -n score.txt
Carol 70
Alice 80
Bob 95

表の列を意識できるようになると、Linuxでのデータ処理が一気に楽になります。

8. 他のコマンドと組み合わせて使う

8. 他のコマンドと組み合わせて使う
8. 他のコマンドと組み合わせて使う

sortは単体でも使えますが、他のコマンドと組み合わせると真価を発揮します。たとえば、lsの結果を並べ替えることもできます。


ls
b.txt
a.txt
c.txt

ls | sort
a.txt
b.txt
c.txt

このように、パイプ(|)を使うことで、コマンド同士をつなげて処理できます。これは水道管で水を流すイメージに近いです。

関連記事:
カテゴリの一覧へ
新着記事
New1
テキスト・データ処理
sortコマンドの使い方を完全ガイド!初心者でもわかるLinuxでテキストやデータを並べ替える基本
New2
ファイル・ディレクトリ操作
touch -mオプション|修正時刻だけを変更する方法を初心者向けに解説
New3
ファイル・ディレクトリ操作
touch -aオプション|アクセス時刻だけを変更する方法をやさしく解説
New4
Linuxコマンドの基本
Linuxで最初に覚えるべき基本コマンド10選!初心者でもわかるLinuxコマンド入門
人気記事
No.1
Java&Spring記事人気No1
テキスト・データ処理
catコマンドとは?Linuxでファイル内容を表示・連結する基本
No.2
Java&Spring記事人気No2
テキスト・データ処理
grepコマンドとは?Linuxで文字列を検索する基本をやさしく解説!
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
cd ~ の使い方を完全解説!ホームディレクトリへの移動方法と初心者向けLinuxコマンド入門