uspTukubaiコマンドに関する様々な資料がここにあります。

 

 

魂内検索

DOCUMENTS

COMMAND

FORUM

UEC DOCS

VIDEO

 

ABC順リスト |  カテゴリ別リスト
動画説明

juni

概要

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

書式

Usage   : juni [<k1> <k2>] <file>
              juni key=<key> <file>
Option  : -h
Version : Thu May 22 18:11:29 JST 2014

説明

第 <k1> フィールドから第 <k2> フィールドまでをキーフィールドとして、
同一キーレコード内での順位をレコード先頭に挿入します。

<k1> <k2> を指定しないときは、すべてのレコードが同一キーレコードとみ
なします。この場合は単純にレコード先頭に行番号を挿入することになりま
す。

key=<key> を指定した場合は、以下のように、連続、不連続のキーフィール
ドを指定することができます。

key=3     第3フィールド
key=3/5   第3,4,5フィールド
key=4@3   第4,3フィールド
key=NF    最終フィールド
key=NF-3  (最終-3)フィールド

-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 オプションでキーを指定しないと、全フィールドをキーフィールドとみ
なします。

$ 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

例5

-h オプションでは、キーフィールドの位置によらず、上位レベルの順位か
ら出力されます。
$ cat data
A111 A11 A1 A
A112 A11 A1 A
A121 A12 A1 A
A122 A12 A1 A
A211 A21 A2 A
A212 A21 A2 A
A221 A22 A2 A
A222 A22 A2 A
B111 B11 B1 B
B112 B11 B1 B
B121 B12 B1 B
B122 B12 B1 B
B211 B21 B2 B
B212 B21 B2 B
B221 B22 B2 B
B222 B22 B2 B

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

備考

rankコマンド