「psort」の版間の差分

提供: Personal Tukubai for Academic
ナビゲーションに移動 検索に移動
(Batch Update)
(msort にリンクを設定。)
 
59行目: 59行目:
 
== 備考 ==
 
== 備考 ==
  
ref=1@2 key=2/4 のような複数キー指定もできます。詳しくは、msort(USP)を参照してください。
+
ref=1@2 key=2/4 のような複数キー指定もできます。詳しくは、[[msort]](USP)を参照してください。
  
 
msort key=A@X, msort key=A@Y, … のように共通キーがある複数のソートを行う場合、
 
msort key=A@X, msort key=A@Y, … のように共通キーがある複数のソートを行う場合、

2022年3月19日 (土) 03:33時点における最新版

名前

psort : パーシャルソート

書式

使い方とオプション

Usage

psort ref=<ref> key=<key> <file>

Option

-e
-s<c>

説明

<ref> で指定したフィールドが同じ値をもつレコード単位に、<key> で指定したフィールドをキーにしてソートします。小さな単位でソートしていくので、ファイル全体をソートするよりも、高速に動作します。

例(その1)

$ cat data
A B 1
A A 2
A E 3
A C 4
A D 5
B B 1
B A 2
B E 3
B C 4
B D 5

$ psort ref=1 key=2 data
A A 2
A B 1
A C 4
A D 5
A E 3
B A 2
B B 1
B C 4
B D 5
B E 3

-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> オプションで変更することができます。

備考

ref=1@2 key=2/4 のような複数キー指定もできます。詳しくは、msort(USP)を参照してください。

msort key=A@X, msort key=A@Y, … のように共通キーがある複数のソートを行う場合、

msort key=A >temp_file psort ref=A key=X temp_file >OUT_X psort ref=A key=Y temp_file >OUT_Y …

のように行うと早い。

Version and Edition

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

Edition : 4


© 2021 Universal Shell Programming Laboratory site