Linuxのsortコマンドでテキストファイルの行を並び替える方法!使い方やオプション一覧を解説!

WindowsやMacOSの無料代替えオペレーションシステムであるLinuxはsortコマンドを使ってテキストファイルの行を並び替えることができます。そこで今日は、Linuxのsortコマンドでの並び替え方法やsortコマンドのオプション一覧を解説します。

目次

  1. 1Linuxのsort(ソート)コマンドとは?何ができる?
  2. sortはbashなどでテキストファイルを行単位で並べ替えるコマンド
  3. 2Linuxのsortコマンドの基本的な使い方
  4. テキストデータを昇順で並べ替える方法
  5. テキストデータを降順で並べ替える方法
  6. 並べ替えた結果をファイルに出力する方法
  7. 3Linuxのsortコマンドの便利な使い方
  8. 数値の値を昇順で並び替える方法
  9. 数値の値を降順で並び替える方法
  10. キーを指定して並び替える方法
  11. 4Linuxのsortコマンドで使うおもなオプション一覧
  12. 重複している行を省いてソートする【-u】
  13. 大文字と小文字を区別しないでソートする【-f】
  14. 空白と英数字のみと仮定してソートする【-d】
  15. 先頭の空白を無視してソートする【-b】
  16. 月名でソートする【-M】
  17. Linuxのsortコマンドオプションまとめ
  18. 5Linuxのsortコマンドを理解して便利に使おう!

Linuxのsort(ソート)コマンドとは?何ができる?

sort(ソート)コマンドのsort(ソート)とは、データを特定の規則に従って\順番に並び替えること、コマンドとは命令のことです。普段Linux以外のExcelなどで並び替え機能は使用している人も多いと思いますが、コマンドを使っての並び替えはあまり馴染みのない人も多いでしょう。そこでLinuxのsort(ソート)コマンドとは何か、何ができるのかを具体的に説明します。

sortはbashなどでテキストファイルを行単位で並べ替えるコマンド

Linuxのsort(ソート)コマンドはテキストファイルを行単位で並べ替えることができるコマンドのことを言います。bashというのは「Bourne Again Shell」の略で、コンピューターのOSを構成するソフトウェアの1つです。もう少し簡単に言うと、作成されたコマンドをコンピューターへ伝えるためのプログラムということです。

bashはスプリクトと組む時に使ったり、情報の提示なとを担当したりするもので、別名シェルスクリプトとも呼ばれています。

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

実際にLimuxのsort(ソート)コマンドを使ってテキストデータを並び替える方法を紹介していきます。まずは基本的なテキストデータの並び替える方法からです。

テキストデータを昇順で並べ替える方法

並べ替えの一番基本的な使い方として、Lunixのsort(ソート)コマンドでテキストデータを昇順に並び替えてみましょう。上画像のような「data.txt」というファイル名のテキストデータをLunixのsort(ソート)コマンドで並べ替える場合、コマンドは「$ sort data.txt」となります。

並び替えた結果が上画像です。普段Excleなどで並べ替え機能を使っている人なら、10の次が20ではなく100という並び替え結果に違和感を覚えるでしょう。なぜならLinuxの標準のsortコマンドでは、テキストデータ=文字として1文字目の小さい順に並び替えるからです。数値の値として並び替えたい場合は、次項「Linuxのsortコマンドの便利な使い方/数値の値を昇順で並び替える方法」で解説します。

テキストデータを降順で並べ替える方法

次にテキストデータを降順(大きい順)に並べ替える方法を紹介します。使用するsort(ソート)コマンドは先ほどの昇順に並べ替えたsortコマンドに降順で開並び替えるオプションである【-r】を加えた「$ sort -r data.txt」です。先ほどの昇順に並び替えに使ったテキストデータを降順に並び替えたものが上画像の右側です。こちらも5,3,2,1と1文字目を降順で並び替えています。

並べ替えた結果をファイルに出力する方法

大量のテキストデータを並べ替えした場合、出力した方が作業がしやすくなります。そのためのファイルに出力するコマンドは、「$ sort 並び替え対象ファイル > 並び替え出力ファイル」となりますので、先ほどのdata.txtをdata_sort.txtというファイル名で出力するには、「$ sort data.txt > data_sort.txt」というコマンドになります。

Linux teeコマンドで標準出力とファイル出力する方法!使い方や使用できるオプションを解説!
本記事では「Linux」の「tee」コマンドを使った標準出力・ファイル出力方法を紹介していき...

Linuxのsortコマンドの便利な使い方

Linuxのsortコマンドは前項で紹介した基本的な並び替え以外にも便利な使い方がありますので紹介していきます。

数値の値を昇順で並び替える方法

Linuxのsortコマンドは1文字目の数値ではなく、数値の値で並び替える方法もあります。その場合、sortコマンドのオプション【-n】を使うことで、テキストデータ(文字列)を数値とみなして並べ替えるため、1、20、50、100のように昇順で並び替えることができます。data.txtを数値で昇順に並び替えたい場合のコマンドは「$ sort -n data.txt」です。

数値の値を降順で並び替える方法

数値の値を降順(大きい順)で並び替える方法もあります。その場合はLinux sortコマンドオプション【-rn】を使います。オプション【-r】は昇順の逆で並べ替え、オプション【-n】は先ほど説明した通り、テキストデータ(文字列)を数値とみなすので、数値を降順に並び替えするというコマンドになり、sortコマンドは「$ sort -rn data.txt」となります。

キーを指定して並び替える方法

関連するまとめ

関連するキーワード

この記事のライター
nabeturbo3
機械音痴でカタカナ単語の苦手な自分に理解できる解説を心がけています。

人気の記事

新着まとめ