Tukubaiオンラインコマンドマニュアル

rank(USP Lab(1))

【名前】

rank : 行に階数を追加

【書式】

Usage   : rank ref=<ref> key=<key> <file>
Version : Thu Dec 15 13:46:38 JST 2011

【説明】

fileの各行に階数を追加する。ref=<ref>で参照キーフィールドを指定した場合、参照キ
ーフィールドが変化した段階で階数を1に初期化する。key=<key>で値フィールドを指定
した場合、値が同じ間は同じ階数を追加する。

【例1】基本パターン

引数を何も指定しないときは、単純に行番号を追加する。

$ cat data
JPN 杉山______ 26
JPN 崎村______ 27
JPN 梶川______ 27
JPN 柳本______ 30
USA BOB_______ 25
USA GEROGE____ 29
USA SAM_______ 29
USA TOM_______ 35
$

$ rank data
1 JPN 杉山______ 26
2 JPN 崎村______ 27
3 JPN 梶川______ 27
4 JPN 柳本______ 30
5 USA BOB_______ 25
6 USA GEROGE____ 29
7 USA SAM_______ 29
8 USA TOM_______ 35
$

【例2】ref指定

ref=<ref>で参照フィールドを指定したときは、参照フィールドが変化した行で、階数を
1に初期化する。ref=1/2 ref=3@2/5 などの連続・不連続のフィールドを指定することも
可能。

$ rank ref=1 data
1 JPN 杉山______ 26
2 JPN 崎村______ 27
3 JPN 梶川______ 27
4 JPN 柳本______ 30
1 USA BOB_______ 25
2 USA GEROGE____ 29
3 USA SAM_______ 29
4 USA TOM_______ 35
$

【例3】key指定

key=<key>で値フィールドを1つだけ指定できる。この場合、値が同じフィールドを持つ
行には同じ階数が追加される。次の行には、はじめから数えた階数が追加される。

$ rank key=3 data
1 JPN 杉山______ 26
2 JPN 崎村______ 27
2 JPN 梶川______ 27
4 JPN 柳本______ 30
5 USA BOB_______ 25
6 USA GEROGE____ 29
6 USA SAM_______ 29
8 USA TOM_______ 35
$

【例4】refとkey指定

参照キーが変化するところで、行番号が初期化され、かつ同じ値フィールドを持つ行に
は同じ階数が追加される。

$ rank ref=1 key=3 data
1 JPN 杉山______ 26
2 JPN 崎村______ 27
2 JPN 梶川______ 27
4 JPN 柳本______ 30
1 USA BOB_______ 25
2 USA GEROGE____ 29
2 USA SAM_______ 29
4 USA TOM_______ 35
$

【注意】

入力ファイルが-あるいは指定がない場合には、標準入力のデータが使用される。

同じ階数を追加するかどうかは、値が文字列として同じかどうかで判断しており、数字
としては判定していない。

【関連項目】

count(USP Lab(1))、gyo(USP Lab(1))、juni(USP Lab(1))、retu(USP Lab(1))

last modified: 2012-04-12 19:06:26
Contact us: uecinfo@usp-lab.com
Copyright (c) 2012 Universal Shell Programming Laboratory All Rights Reserved.
