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

 

 

魂内検索

DOCUMENTS

COMMAND

FORUM

UEC DOCS

VIDEO

 

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

(動画教材準備中)

fldcmp

<概要>

fldcmp : フィールド単位のファイル比較を行う

<書式>

Usage   : fldcmp [-a] [-l] [key=<n>] <file1> <file2>
Version : Tue Jul  1 19:17:26 JST 2014

<説明>

<file1> ファイルと <file2> ファイルをフィールド単位で比較します。
全く同じであれば出力はなく、正常終了します。

<例1>

最初に検出した異なるフィールドを次の形式で表示してエラー終了します。
レコード番号 フィールド番号 <file1>のフィールド <file2>のフィールド

$ cat data1
0000000 浜地______ 50 F 9x 59 20 7x 54
0000001 鈴田______ 50 F 4x 3x 83 51
0000003 杉山______ 26 F 30 50 71 36 30
$ cat data2
0000000 浜地______ 50 F 91 59 20 76 54
0000002 鈴田______ 50 F 46 39 83 51 21
0000003 杉山______ 26 F 30 50 71
0000004 白土______ 40 M 58 71 20 10 67
$ fldcmp data1 data2 > result
$ echo $?
1
$ cat result
1 5 9x 91

<例2>

異なるフィールドが複数有る場合、全ての異なるフィールドを表示します。
異なるフィールドがある場合はエラー終了します。
一方のファイルのフィールドやレコードが不足している場合は、不足してい
るフィールドを "(Null)" で表します。

$ fldcmp -a data1 data2 > result
$ echo $?
1
$ cat result
1 5 9x 91
1 8 7x 76
2 1 0000001 0000002
2 5 4x 46
2 6 3x 39
2 9 (Null) 21
3 8 36 (Null)
3 9 30 (Null)
4 1 (Null) 0000004
4 2 (Null) 白土______
4 3 (Null) 40
4 4 (Null) M
4 5 (Null) 58
4 6 (Null) 71
4 7 (Null) 20
4 8 (Null) 10
4 9 (Null) 67

<例3>

表示する各行にファイル名を付けることができます。

$ fldcmp -a -l data1 data2 > result
$ echo $?
1
$ cat result
data1 data2 1 5 9x 91
data1 data2 1 8 7x 76
data1 data2 2 1 0000001 0000002
data1 data2 2 5 4x 46
data1 data2 2 6 3x 39
data1 data2 2 9 (Null) 21
data1 data2 3 8 36 (Null)
data1 data2 3 9 30 (Null)
data1 data2 4 1 (Null) 0000004
data1 data2 4 2 (Null) 白土______
data1 data2 4 3 (Null) 40
data1 data2 4 4 (Null) M
data1 data2 4 5 (Null) 58
data1 data2 4 6 (Null) 71
data1 data2 4 7 (Null) 20
data1 data2 4 8 (Null) 10
data1 data2 4 9 (Null) 67

<例4>

キーが一致するレコードだけ比較します。キーは昇順にソートされていなけ
ればなりません。この場合、レコード番号は <file1> と <file2> の両方が
表示されます。

$ fldcmp -a -l key=1 data1 data2 > result
$ echo $?
1
$ cat result
data1 data2 1 5 9x 91
data1 data2 1 8 7x 76
data1 data2 3 8 36 (Null)
data1 data2 3 9 30 (Null)