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オンラインコマンドマニュアル

## juni(USP Lab(1))

### 【名前】

juni : 同一キー内での順位を出力

### 【書式】

    Usage	: juni [<k1> <k2>] <file>
    	: juni -h [<k1> <k2>] <file>
    Version	: Thu Dec 15 13:46:38 JST 2011

### 【説明】

第<k1>フィールドから第<k2>フィールドまでをキーフィールドとして、同一キーの行どうしにおける順位を行の先頭に挿入する。<k1> <k2>を指定しないときは、すべての行が同一キーとみなすものとする。この場合は単純に行の先頭に行番号を挿入するのと同じになる。

-hオプションを指定した場合、各キーフィールドの順位を階層的に出力する。<file>を指定しない、あるいは、-が指定された時には標準入力からのデータ入力を期待する。

### 【例1】

行番号を付与する。

    $ cat data
    0000007 セロリ 100
    0000017 練馬大根 95
    0000021 温州みかん 80
    0000025 プリンスメロン 70
    0000030 じゃが芋 30
    $

    $ juni data
    1 0000007 セロリ 100
    2 0000017 練馬大根 95
    3 0000021 温州みかん 80
    4 0000025 プリンスメロン 70
    5 0000030 じゃが芋 30
    $

### 【例2】

キーが関係する場合、キーの開始フィールドと終了フィールドを指定して、同一キーを持つ行どうしにおける順位を行頭に付与する。

    $ cat data
    関東 パスタ 100
    関東 おにぎり 90
    関東 パン 40
    九州 おにぎり 150
    九州 パン 140
    九州 パスタ 100
    $

    $ juni 1 1 data
    1 関東 パスタ 100
    2 関東 おにぎり 90
    3 関東 パン 40
    1 九州 おにぎり 150
    2 九州 パン 140
    3 九州 パスタ 100
    $

### 【例3】

-hオプションを指定した場合、各キーフィールドの順位を階層的に出力する。

    $ cat data
    A A1 A11 A111
    A A1 A11 A112
    A A1 A12 A121
    A A1 A12 A122
    A A2 A21 A211
    A A2 A21 A212
    A A2 A22 A221
    A A2 A22 A222
    B B1 B11 B111
    B B1 B11 B112
    B B1 B12 B121
    B B1 B12 B122
    B B2 B21 B211
    B B2 B21 B212
    B B2 B22 B221
    B B2 B22 B222
    $

    $ juni -h 1 3 data
    1 1 1 A A1 A11 A111
    1 1 1 A A1 A11 A112
    1 1 2 A A1 A12 A121
    1 1 2 A A1 A12 A122
    1 2 1 A A2 A21 A211
    1 2 1 A A2 A21 A212
    1 2 2 A A2 A22 A221
    1 2 2 A A2 A22 A222
    2 1 1 B B1 B11 B111
    2 1 1 B B1 B11 B112
    2 1 2 B B1 B12 B121
    2 1 2 B B1 B12 B122
    2 2 1 B B2 B21 B211
    2 2 1 B B2 B21 B212
    2 2 2 B B2 B22 B221
    2 2 2 B B2 B22 B222
    $

### 【例4】

-hオプションでキーを指定しない場合には、第1フィールドから最終フィールドまでをキーフィールドとみなす。

    $ juni -h data
    1 1 1 1 A A1 A11 A111
    1 1 1 2 A A1 A11 A112
    1 1 2 1 A A1 A12 A121
    1 1 2 2 A A1 A12 A122
    1 2 1 1 A A2 A21 A211
    1 2 1 2 A A2 A21 A212
    1 2 2 1 A A2 A22 A221
    1 2 2 2 A A2 A22 A222
    2 1 1 1 B B1 B11 B111
    2 1 1 2 B B1 B11 B112
    2 1 2 1 B B1 B12 B121
    2 1 2 2 B B1 B12 B122
    2 2 1 1 B B2 B21 B211
    2 2 1 2 B B2 B21 B212
    2 2 2 1 B B2 B22 B221
    2 2 2 2 B B2 B22 B222

### 【関連項目】

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

- ∧

last modified: 2012-04-12 19:05:15