もっと詳しく

テキストファイルのコンテンツを並べ替えるコマンドラインユーティリティをお探しですか? これ以上探す必要はありません 選別、この目的のために特別に構築されたツール。 このチュートリアルでは、わかりやすい例を使用してこのコマンドについて説明します。 ただし、その前に、ここでのすべての例がUbuntu16.04LTSマシンでテストされていることを言及する価値があります。

Linuxの並べ替えコマンド

[並べ替え]コマンドを使用すると、テキストファイルの行を並べ替えることができます。 その構文は次のとおりです。

sort [OPTION]... [FILE]...

そして、これがツールのマニュアルページがそれをどのように説明しているかです:

Write sorted concatenation of all FILE(s) to standard output.
With no FILE, or when FILE is -, read standard input.

以下は、ソートがどのように機能するかについての良いアイデアを与えるはずのいくつかのQ&Aスタイルの例です。

Q1。 ソートコマンドの使い方は?

いくつかの名前を含むファイルがあり、それらをアルファベット順にソートするとします。 次に、必要なのは、ファイルの名前をsortコマンドへの入力として渡すことだけです。

例えば:

sort file1

したがって、ファイル1に次の行が含まれている場合:

Zimbabwe
Serbia
Norway
Australia

その場合、出力は次のようになります。

Australia
Norway
Serbia
Zimbabwe

Q2。 ソートで先行ブランクを無視する方法は?

ロケールによっては、行に先頭の空白が含まれていると、ソートによって予期しない結果が生じる場合があります。 例えば:

ファイルに次の行が含まれているとします。

Zimbabwe
 Serbia
  Norway
Australia

そして、sortを実行すると、次の結果が表示されます。

  Norway
 Serbia
Australia
Zimbabwe

これは予想外のように見えるかもしれませんが、実際に起こったことは、先頭の空白を含む行が空白に基づいて並べ替えられ、他の行はアルファベット順に並べ替えられたことです。 ソートコマンドが先行ブランクを無視するようにするには、-bオプションを使用します。 したがって、その場合、次の結果が得られます。

Australia
  Norway
 Serbia
Zimbabwe

Q3。 ソートで大文字と小文字を区別しないようにするにはどうすればよいですか?

ファイルに大文字と小文字の両方で始まる単語/行がある場合、sortは大文字が上にあるものを表示します。 ただし、必要に応じて、-fコマンドラインオプションを使用してこの動作を変更できます。

例えば:

sort -f file1

Q4。 ソート比較番号を作成するにはどうすればよいですか?

ファイルに数字のみが含まれていて、それらを並べ替える必要があるとします。 次に、-gコマンドラインオプションを使用してこれを可能にすることができます。

sort -g file1

たとえば、次の内容のファイル:

32000
2500
50000
54

sortコマンドを使用してソートすると、次の結果が得られます。

54
2500
32000
50000

Q5。 人間が読める数値でソートを機能させる方法は?

ソートを1K、2Gなどの人間が読める数値で機能させたい場合は、-hコマンドラインオプションを使用します。

sort -h file1

したがって、たとえば、次の行を含むファイル:

1M
2G
3K

-hオプションを使用して、次の方法で並べ替えることができます。

3K
1M
2G

Q6。 ソートされた入力のみをソートするようにするにはどうすればよいですか?

ファイルが並べ替えられているかどうかだけを確認するように並べ替える場合は、-cコマンドラインオプションを使用します。

sort -c file1

たとえば、file1に次の行が含まれている場合:

dhg
lkh
zyb
abd

次に、-cを使用すると、sortが次の出力を生成します。

sort: file1:4: disorder: abd

したがって、ツールが障害があることを示すだけでなく、その場所も出力することがわかります。

Q7。 すでに並べ替えられたファイルを並べ替えてマージするにはどうすればよいですか?

並べ替えで既に並べ替えられた2つのファイルをマージする場合は、-mコマンドラインオプションを使用します。

sort -m file1 file2

たとえば、私の場合、file1とfile2の両方に次の行が含まれていました。

abd
dhg
lkh
zyb

そして、-mオプションがこれらのファイルをマージする方法は次のとおりです。

abd
abd
dhg
dhg
lkh
lkh
zyb
zyb

Q8。 ソートで結果をファイルに書き込むにはどうすればよいですか?

デフォルトでは、sortコマンドは出力をSTDOUTに書き込みます。 ただし、-oオプションを使用して、特定のファイルに強制的に書き込むことができます。

例えば:

sort file1 -o output.txt

結論

並べ替えコマンドには多くのオプションがあります。 ここでは、いくつかの重要なものについて説明しました。 これらを最初に練習することをお勧めします。練習が終わったら、コマンドの マニュアルページ それについてもっと学ぶために。

The post 初心者向けのLinuxソートコマンドチュートリアル(8例) appeared first on Gamingsym Japan.