unix sort command with syntax
例を使用してUnixソートコマンドを学習します。
Unixのsortコマンドは、テキストファイルの内容を1行ずつ並べ替えるために使用できる単純なコマンドです。
このコマンドは、入力テキストをソートし、結果をstdoutに出力するフィルターコマンドです。デフォルトでは、ソートは最初の文字から1行ずつ行われます。
- 数字は文字の前にソートされます。
- 小文字は大文字の前にソートされます。
例を含むUnixソートコマンド
ソート構文:
sort (options) (files)
並べ替えオプション:
サポートされているオプションのいくつかは次のとおりです。
- sort -b:行頭の空白を無視します。
- sort -r:ソート順を逆にします。
- sort -o:出力ファイルを指定します。
- sort -n:数値を使用してソートします。
- sort -M:指定された暦月に従ってソートします。
- sort -u:前のキーを繰り返す行を抑制します。
- sort -k POS1、POS2:ソートを行うためのキーを指定します。 POS1とPOS2はオプションのパラメーターであり、開始フィールドと終了フィールドのインデックスを示すために使用されます。 POS2がない場合、POS1で指定されたフィールドのみが使用されます。各POSは「F.C」として指定されます。ここで、Fはフィールドインデックスを表し、Cはフィールドの先頭からの文字インデックスを表します。
- sort -t SEP:提供されている区切り文字を使用してフィールドを識別します。
「-k」オプションを使用すると、sortコマンドを使用してフラットファイルデータベースを並べ替えることができます。 「-k」オプションがない場合、ソートは行全体を使用して実行されます。フィールドのデフォルトの区切り文字はスペース文字です。 -tオプションを使用して、区切り文字を変更できます。
例:
次の例では、file1.txtの以下の初期コンテンツを想定しています。
01プリヤ
04シュレヤ
03書き込み
02タシャール
デフォルトの順序で並べ替えます。
$ sort file1.txt 01 Priya 02 Tushar 03Tuhina 04 Shreya
この例では、最初に最初の文字を使用してソートが実行されます。これはすべての行で同じであるため、ソートは2番目の文字に進みます。 2番目の文字は行ごとに一意であるため、並べ替えはそこで終了します。
逆の順序で並べ替えます。
$ sort -r file1.txt 04 Shreya 03Tuhina 02 Tushar 01 Priya
この例では、ソートは上記の例と同様に実行されますが、結果は逆の順序になります。
2番目のフィールドで並べ替えます。
$ sort -k 2 file1.txt 01 Priya 04Shreya 03Tuhina 02 Tushar
ここで、元のfile2.txtが次のようになっていると仮定します。
01プリヤ
01プージャ
01プリヤ
01偶数
デフォルトの順序で並べ替える
$ sort file2.txt 01 Pari 01 Pooja 01Priya 01Priya
繰り返し行を抑制してソート
$ sort -u file2.txt 01 Pari 01 Pooja 01Priya
結論
UnixのSortコマンドは、入力テキストをソートし、結果をstdoutに出力するフィルターコマンドです。この投稿で説明されているUnixのsortコマンドの構文とオプションがお役に立てば幸いです。
Eclipseで新しいプロジェクトを開く方法