msort

提供: Personal Tukubai for Academic
2021年6月7日 (月) 08:37時点におけるPt4a editor (トーク | 投稿記録)による版 (Batch Update)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

名前

msort : オンメモリーソート

書式

使い方とオプション

Usage

msort key=<key> <file>

Option

-e
-s<c>
-p<n>

説明

key=<key> にしたがって <file> のソートを行います。<key> として、フィールドの位置を指定できます。

msort key=2 file
msort key=2/5 file
msort key=3@1@NF file

キーの長さやキーフィールド数の制限はありません。日本語などのマルチバイト文字が含まれていても構いません。フィールド位置の後に r を付けると、そのフィールドは降順にソートされます。n を付けると数値として比較されます。nr を付けると、数値として比較されて降順にソートされます。/ の前後のフィールドにソート種別を付ける場合は、前後で揃っている必要があります。

msort key=2n/5n  file      ○
msort key=2n/5nr file      ×
msort key=2n/5r  file      ×

ファイル名を指定しない、或は - を指定した場合、標準入力から読み込みます。

-e オプションを指定すると、以下の置換を行った文字列で比較を行います。

_  →  0x20 (space)
\0 →  0x00 (null)
\t →  0x09 (tab stop)
\n →  0x0a (new line)
\r →  0x0d (carrige return)
\_ →  0x5f (under score)
\\ →  0x5c (back slash)

この置換の _ は、-s<c> オプションで変更することができます。

-p<n> オプションを指定すると、<n> プロセスで並列実行します。指定できるプロセス数に制限はありませんが、コア(CPU)数より多いプロセス数を指定すると性能が低下します。 入力が 10000 行未満の場合は、-p<n> オプションを指定しても 1 プロセスで実行されます。

注意

msort はマージソートによってソートを行っていますので、入力データによって実行時間が異常に長くなるということはありません。

備考

msort はオンメモリソートの為、最大でソートするファイルの3倍程度の量のメモリを消費します。

Version and Edition

Version: Tue Jan 12 23:04:38 JST 2021

Edition: 5


© 2021 Universal Shell Programming Laboratory site