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

 

 

魂内検索

DOCUMENTS

COMMAND

FORUM

UEC DOCS

VIDEO

 

ABC順リスト |  カテゴリ別リスト

(動画教材準備中)

kesu

<概要>

kesu : 連続したレコードで同じキー項目を消す

<書式>

Usage   : kesu [option] num=<n> <file>
Option  : -d<chr>
          -i<str>
          -h
Version : Thu Apr 14 11:06:10 JST 2016
Edition : 1

<説明>

<file> の第1フィールドから第 <n> フィールドまでをキーとして、連続し
たレコードで同じキーがある場合、2行目以降のキーを空白に変換します。

-d オプションを指定すると、置換する空白文字を <chr> に変更することが
できます。

-i オプションを指定すると、置換するキーフィールドを <str> に変更こと
ができます。

-h オプションを指定すると、部分消去になり、行頭から一致したフィール
ドを置換します。-d オプションまたは -i オプションと併用できます。

<例1>

$ cat data
001 埼玉県   01 さいたま市 91 59 20 76 54
001 埼玉県   01 さいたま市 46 39  8  5 21
001 埼玉県   02 熊谷市     82  0 23 84 10
001 埼玉県   02 熊谷市     45 93 28 61 23
002 東京都   01 新宿区     30 50 71 36 30
002 東京都   01 新宿区     78 13 44 28 51
002 東京都   02 港区       39 22 13 76 08
002 東京都   02 港区       58 71 20 10  6
003 神奈川県 01 横浜市     52 91 44  9  0
003 神奈川県 01 横浜市     60 89 33 18  6
003 神奈川県 02 川崎市     92 56 83 96 75
003 神奈川県 02 川崎市     30 12 32 44 19

$ kesu num=2 data
001 埼玉県   01 さいたま市 91 59 20 76 54
             01 さいたま市 46 39  8  5 21
             02 熊谷市     82  0 23 84 10
             02 熊谷市     45 93 28 61 23
002 東京都   01 新宿区     30 50 71 36 30
             01 新宿区     78 13 44 28 51
             02 港区       39 22 13 76 08
             02 港区       58 71 20 10  6
003 神奈川県 01 横浜市     52 91 44  9  0
             01 横浜市     60 89 33 18  6
             02 川崎市     92 56 83 96 75
             02 川崎市     30 12 32 44 19

<例2>

ダミー文字を "@" に変えます
$ kesu -d@ num=2 data
001 埼玉県   01 さいたま市 91 59 20 76 54
@@@ @@@@@@   01 さいたま市 46 39  8  5 21
@@@ @@@@@@   02 熊谷市     82  0 23 84 10
@@@ @@@@@@   02 熊谷市     45 93 28 61 23
002 東京都   01 新宿区     30 50 71 36 30
@@@ @@@@@@   01 新宿区     78 13 44 28 51
@@@ @@@@@@   02 港区       39 22 13 76 08
@@@ @@@@@@   02 港区       58 71 20 10  6
003 神奈川県 01 横浜市     52 91 44  9  0
@@@ @@@@@@@@ 01 横浜市     60 89 33 18  6
@@@ @@@@@@@@ 02 川崎市     92 56 83 96 75
@@@ @@@@@@@@ 02 川崎市     30 12 32 44 19

<例3>

ダミーフィールドを "@" にします
$ kesu -i@ num=2 data | keta
001   埼玉県 01 さいたま市 91 59 20 76 54
  @        @ 01 さいたま市 46 39  8  5 21
  @        @ 02     熊谷市 82  0 23 84 10
  @        @ 02     熊谷市 45 93 28 61 23
002   東京都 01     新宿区 30 50 71 36 30
  @        @ 01     新宿区 78 13 44 28 51
  @        @ 02       港区 39 22 13 76 08
  @        @ 02       港区 58 71 20 10  6
003 神奈川県 01     横浜市 52 91 44  9  0
  @        @ 01     横浜市 60 89 33 18  6
  @        @ 02     川崎市 92 56 83 96 75
  @        @ 02     川崎市 30 12 32 44 19

<例4>

部分消去にします。
$ kesu -h num=4 data
001 埼玉県   01 さいたま市 91 59 20 76 54
                           46 39  8  5 21
             02 熊谷市     82  0 23 84 10
                           45 93 28 61 23
002 東京都   01 新宿区     30 50 71 36 30
                           78 13 44 28 51
             02 港区       39 22 13 76 08
                           58 71 20 10  6
003 神奈川県 01 横浜市     52 91 44  9  0
                           60 89 33 18  6
             02 川崎市     92 56 83 96 75
                           30 12 32 44 19

<注意>
フィールド数が <n> に満たない行は、そのまま出力されます。この場合、
キーは行全体になります。

$ cat data2
001 東京都 01 新宿区 91 59 20 76 54
001 東京都 01 新宿区 46 39  8  5 21
-----------------------------------
-----------------------------------
001 東京都 02 中央区 82  0 23 84 10
001 東京都 02 中央区 30 50 71 36 30

$ kesu num=2 data2
001 東京都 01 新宿区 91 59 20 76 54
           01 新宿区 46 39  8  5 21
-----------------------------------

001 東京都 02 中央区 82  0 23 84 10
           02 中央区 30 50 71 36 30