The usage of tmatch2
is
stilts <stilts-flags> tmatch2 ifmt1=<in-format> ifmt2=<in-format> icmd1=<cmds> icmd2=<cmds> ocmd=<cmds> omode=<out-mode> <mode-args> out=<out-table> ofmt=<out-format> matcher=<matcher-name> values1=<expr-list> values2=<expr-list> params=<match-params> join=1and2|1or2|all1|all2|1not2|2not1|1xor2 find=best|all duptag1=<trail-string> duptag2=<trail-string> [in1=]<table1> [in2=]<table2>If you don't have the
stilts
script installed,
write "java -jar stilts.jar
" instead of
"stilts
" - see Section 3.
The available <stilts-flags>
are listed
in Section 2.1.
Parameter values are assigned on the command line as explained in Section 2.3. They are as follows:
duptag1 = <trail-string>
[Default: _1
]
duptag2 = <trail-string>
[Default: _2
]
find = best|all
best
is selected, then only the best match
between the two tables will be retained; in this case
the data from a row of either input table will appear in
at most one row of the output table.
If all
is selected, then all pairs of rows
from the two input tables which match the input criteria
will be represented in the output table.
[Default: best
]
icmd1 = <cmds>
The value of this parameter is one or more of the filter commands described in Section 5.1. If more than one is given, they must be separated by semicolon characters (";"). This parameter can be repeated multiple times on the same command line to build up a list of processing steps. The sequence of commands given in this way defines the processing pipeline which is performed on the table.
Commands may alteratively be supplied in an external file,
by using the indirection character '@'.
Thus "icmd1=@filename
"
causes the file filename
to be read for a list
of filter commands to execute. The commands in the file
may be separated by newline characters and/or semicolons.
icmd2 = <cmds>
The value of this parameter is one or more of the filter commands described in Section 5.1. If more than one is given, they must be separated by semicolon characters (";"). This parameter can be repeated multiple times on the same command line to build up a list of processing steps. The sequence of commands given in this way defines the processing pipeline which is performed on the table.
Commands may alteratively be supplied in an external file,
by using the indirection character '@'.
Thus "icmd2=@filename
"
causes the file filename
to be read for a list
of filter commands to execute. The commands in the file
may be separated by newline characters and/or semicolons.
ifmt1 = <in-format>
(auto)
(the default),
then an attempt will be
made to detect the format of the table automatically.
This cannot always be done correctly however, in which case
the program will exit with an error explaining which
formats were attempted.
[Default: (auto)
]
ifmt2 = <in-format>
(auto)
(the default),
then an attempt will be
made to detect the format of the table automatically.
This cannot always be done correctly however, in which case
the program will exit with an error explaining which
formats were attempted.
[Default: (auto)
]
in1 = <table1>
ifmt1
parameter.
in2 = <table2>
ifmt2
parameter.
join = 1and2|1or2|all1|all2|1not2|2not1|1xor2
1and2
: An output row for each row represented in both input tables1or2
: An output row for each row represented in either or both of the input tablesall1
: An output row for each matched or unmatched row in table 1all2
: An output row for each matched or unmatched row in table 21not2
: An output row only for rows which appear in the first table but are not matched in the second table2not1
: An output row only for rows which appear in the second table but are not matched in the first table1xor2
: An output row only for rows represented in one of the input tables but not the other one[Default: 1and2
]
matcher = <matcher-name>
params
,
values1
and values2
parameters.
[Default: sky
]
ocmd = <cmds>
The value of this parameter is one or more of the filter commands described in Section 5.1. If more than one is given, they must be separated by semicolon characters (";"). This parameter can be repeated multiple times on the same command line to build up a list of processing steps. The sequence of commands given in this way defines the processing pipeline which is performed on the table.
Commands may alteratively be supplied in an external file,
by using the indirection character '@'.
Thus "ocmd=@filename
"
causes the file filename
to be read for a list
of filter commands to execute. The commands in the file
may be separated by newline characters and/or semicolons.
ofmt = <out-format>
(auto)
"
(the default),
then the output filename will be
examined to try to guess what sort of file is required
usually by looking at the extension.
If it's not obvious from the filename what output format is
intended, an error will result.
This parameter must only be given if
omode
has its default value of "out
".
[Default: (auto)
]
omode = <out-mode> <mode-args>
out
, which means that
the result will be written as a new table to disk or elsewhere,
as determined by the out
and ofmt
parameters.
However, there are other possibilities, which correspond
to uses to which a table can be put other than outputting it,
such as displaying metadata, calculating statistics,
or populating a table in an SQL database.
For some values of this parameter, additional parameters
(<mode-args>
)
are required to determine the exact behaviour.
Possible values are
out
meta
stats
count
cgi
discard
topcat
plastic
tosql
help=omode
flag
or see Section 5.4 for more information.
[Default: out
]
out = <out-table>
This parameter must only be given if
omode
has its default value of "out
".
[Default: -
]
params = <match-params>
matcher
parameter.
If it contains multiple values, they must be separated by spaces;
values which contain a space can be 'quoted' or "quoted".
values1 = <expr-list>
matcher
.
Depending on the kind of match, the number and type of
the values required will be different.
Multiple values should be separated by whitespace;
if whitespace occurs within a single value it must be
'quoted' or "quoted".
Elements of the expression list are commonly just column
names, but may be algebraic expressions calculated from
zero or more columns as explained in Section 7.
values2 = <expr-list>
matcher
.
Depending on the kind of match, the number and type of
the values required will be different.
Multiple values should be separated by whitespace;
if whitespace occurs within a single value it must be
'quoted' or "quoted".
Elements of the expression list are commonly just column
names, but may be algebraic expressions calculated from
zero or more columns as explained in Section 7.