Annotation of lucent/sys/man/1/join, revision 1.1

1.1     ! root        1: .TH JOIN 1
        !             2: .CT 1 files
        !             3: .SH NAME
        !             4: join \- relational database operator
        !             5: .SH SYNOPSIS
        !             6: .B join
        !             7: [
        !             8: .I options
        !             9: ]
        !            10: .I file1 file2
        !            11: .SH DESCRIPTION
        !            12: .I Join
        !            13: forms, on the standard output,
        !            14: a join
        !            15: of the two relations specified by the lines of
        !            16: .I file1
        !            17: and
        !            18: .IR file2 .
        !            19: If one of the file names is
        !            20: .LR - ,
        !            21: the standard input is used.
        !            22: .PP
        !            23: .I File1
        !            24: and
        !            25: .I file2
        !            26: must be sorted in increasing
        !            27: .SM ASCII 
        !            28: collating
        !            29: sequence on the fields
        !            30: on which they are to be joined,
        !            31: normally the first in each line.
        !            32: .PP
        !            33: There is one line in the output
        !            34: for each pair of lines in
        !            35: .I file1
        !            36: and
        !            37: .I file2
        !            38: that have identical join fields.
        !            39: The output line normally consists of the common field,
        !            40: then the rest of the line from
        !            41: .IR file1 ,
        !            42: then the rest of the line from
        !            43: .IR file2 .
        !            44: .PP
        !            45: Input fields are normally separated spaces or tabs;
        !            46: output fields by space.
        !            47: In this case, multiple separators count as one, and
        !            48: leading separators are discarded.
        !            49: .PP
        !            50: The following options are recognized, with POSIX syntax.
        !            51: .TP
        !            52: .BI -a " n
        !            53: In addition to the normal output,
        !            54: produce a line for each unpairable line in file
        !            55: .IR n ,
        !            56: where
        !            57: .I n
        !            58: is 1 or 2.
        !            59: .TP
        !            60: .BI -v " n
        !            61: Like
        !            62: .BR -a ,
        !            63: omitting output for paired lines.
        !            64: .TP
        !            65: .BI -e " s
        !            66: Replace empty output fields by string
        !            67: .IR s .
        !            68: .TP
        !            69: .BI -1 " m
        !            70: .br
        !            71: .ns
        !            72: .TP
        !            73: .BI -2 " m
        !            74: Join on the
        !            75: .IR m th
        !            76: field of
        !            77: .I file1
        !            78: or
        !            79: .IR file2 .
        !            80: .TP
        !            81: .BI -j "n m"
        !            82: Archaic equivalent for
        !            83: .BI - n " m"\f1.
        !            84: .TP
        !            85: .BI -o fields
        !            86: Each output line comprises the designated fields.
        !            87: The comma-separated field designators are either
        !            88: .BR 0 ,
        !            89: meaning the join field, or have the form
        !            90: .IR n . m ,
        !            91: where
        !            92: .I n
        !            93: is a file number and
        !            94: .I m
        !            95: is a field number.
        !            96: Archaic usage allows separate arguments for field designators.
        !            97: .PP
        !            98: .TP
        !            99: .BI -t c
        !           100: Use character
        !           101: .I c
        !           102: as the only separator (tab character) on input and output.
        !           103: Every appearance of
        !           104: .I c
        !           105: in a line is significant.
        !           106: .SH EXAMPLES
        !           107: .TP
        !           108: .L
        !           109: sort /adm/users | join -t: -a 1 -e "" - bdays
        !           110: Add birthdays to password information, leaving unknown
        !           111: birthdays empty.
        !           112: The layout of 
        !           113: .F /adm/users
        !           114: is given in
        !           115: .IR users (6);
        !           116: .B bdays
        !           117: contains sorted lines like
        !           118: .LR "ken:Feb\ 4,\ 1953" .
        !           119: .TP
        !           120: .L
        !           121: tr : ' ' </adm/users | sort -k 3 3 >temp
        !           122: .br
        !           123: .ns
        !           124: .TP
        !           125: .L
        !           126: join -1 3 -2 3 -o 1.1,2.1 temp temp | awk '$1 < $2'
        !           127: Print all pairs of users with identical userids.
        !           128: .SH SOURCE
        !           129: .B /sys/src/cmd/join.c
        !           130: .SH "SEE ALSO"
        !           131: .IR sort (1), 
        !           132: .IR comm (1), 
        !           133: .IR awk (1)
        !           134: .SH BUGS
        !           135: With default field separation,
        !           136: the collating sequence is that of
        !           137: .BI "sort -b"
        !           138: .BI -k y , y\f1;
        !           139: with
        !           140: .BR -t ,
        !           141: the sequence is that of
        !           142: .BI "sort -t" x
        !           143: .BI -k y , y\f1.
        !           144: .br
        !           145: One of the files must be randomly accessible.
        !           146: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.