Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ join(1) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

sort(1)

comm(1)

awk(1)

JOIN(1)  —  NEWS-OS Programmer’s Manual

名称

join − リレーショナルデータベース操作プログラム

形式

join [ options ] file1 file2

解説

join は、 file1 と file2 によって指定された 2 つのリレーションを結合し、 結果を標準出力に出力します。 file1 が − である場合には、標準入力が使用されます。

file1 と file2 は、結合されるフィールド(通常は、各行の先頭のフィールド)において、 文字コードの昇順にソートされていなければなりません。

同じ結合フィールドを持つ file1 と file2 の行の組みは、出力では 1 行で表示されます。 出力行は、通常、共通のフィールド、 file1 の行の残りの部分、 file2 の行の残りの部分から構成されます。

フィールドは、通常、ブランク、タブ、改行で区切られます。 この場合、複数の区切り文字は 1 つとしてカウントされ、 先頭の区切り文字は捨てられます。

オプション

−an 通常の出力に加えて、 ファイル n (ここで、 n は 1 または 2) にある、組みにすることのできなかった行を 出力します。

−e s -o で選択されたリストの中で、空の出力フィールドを文字列 s で置き換えます。

−jn m ファイル n の m 番目のフィールドを使用して結合を行います。 n が指定されない場合には、各ファイルの m 番目のフィールドを使用します。

−o list 各出力行は、 list で指定されたフィールドで構成されます。 list の各要素は n.m の形になります。 ここで、 n はファイル番号で、 m はフィールド番号です。

−tc 区切り文字(タブ文字)として文字 c を使用します。 行に含まれる c は、すべてこの意味を持ちます。

例

使用例です。ファイル phone:


!Namephone Number
Hikari03-4123-1234
Kodama06-123-1234
Nozomi
Tubasa0123-45-6789

ファイル fax:

!NameFax Number
Hikari03-4123-1235
Kodama
Nozomi06-432-1098
Tubasa0123-45-6780

(ここで、大きな空白は、1つのタブ文字です)
コマンド:

% join -t"<tab>" -e "(Unknown)" -o 1.1 1.2 2.2 phone fax

は以下のような結果になります:

!Name   phone Number    Fax Number
Hikari  03-4123-1234    03-4123-1235
Kodama  06-123-1234     (Unknown)
Nozomi  (Unknown)       06-432-1098
Tubasa  0123-45-6789    0123-45-6780

関連事項

sort(1), comm(1), awk(1)

バグ

デフォルトのフィールド区切りの場合、照合順序は sort −b の順になります。 −t オプションを用いると、照合順序は単純ソートの順になります。

join、 sort、 comm、 uniq、 look、 awk の規約は、不統一です。

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026