UEC - UNIXを深く理解し、シェルプログラミングを極めるコミュニティサイト

- Tukubaiマニュアル
  - cgi-name(1)
  - check_attr_name(1)
  - check_need_name(1)
  - comma(1)
  - count(1)
  - ctail(1)
  - delf(1)
  - divsen(1)
  - getfirst(1)
  - getlast(1)
  - gyo(1)
  - han(1)
  - join0(1)
  - join1(1)
  - join2(1)
  - juni(1)
  - kasan(1)
  - keta(1)
  - keycut(1)
  - loopj(1)
  - loopx(1)
  - map(1)
  - marume(1)
  - mdate(1)
  - mime-read(1)
  - mojihame(1)
  - nameread(1)
  - plus(1)
  - rank(1)
  - ratio(1)
  - retu(1)
  - self(1)
  - sm2(1)
  - sm4(1)
  - sm5(1)
  - tarr(1)
  - tateyoko(1)
  - tcat(1)
  - unmap(1)
  - up3(1)
  - yarr(1)
  - ycat(1)
  - yobi(1)
  - ysum(1)
  - zen(1)
  - タグ形式(5)
  - ネーム形式(5)
  - フィールド形式(5)

# 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