mirror of
https://codeberg.org/libreboot/lbmk.git
synced 2026-07-11 14:02:52 +02:00
config/git: import suckless sbase
i currently use the output of sha512sum in several places of xbmk, which is a bit unreliable in case output changes. other cases where i use util outputs in variables are probably reliable, because i'm using mostly posix utilities in those. to mitigate this, i now import suckless sbase, which has a reasonable sha512sum implementation. *every* binary it builds is being placed in build.list, because i'll probably start using more of them. for example, i may start modifying the "date" implementation, adding the GNU-specific options that i need as mentioned on init.sh i'm importing it in util/ because the sha512sum util is needed for verifying project sources, so if sbase itself is a "project source", that means we can into a chicken and egg bootstrapping problem. this is sbase at revision: 055cc1ae1b3a13c3d8f25af0a4a3316590efcd48 Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
@@ -0,0 +1,105 @@
|
||||
.Dd October 8, 2015
|
||||
.Dt JOIN 1
|
||||
.Os sbase
|
||||
.Sh NAME
|
||||
.Nm join
|
||||
.Nd relational database operator
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
||||
.Op Fl 1 Ar field
|
||||
.Op Fl 2 Ar field
|
||||
.Op Fl o Ar list
|
||||
.Op Fl e Ar string
|
||||
.Op Fl a Ar fileno | Fl v Ar fileno
|
||||
.Op Fl t Ar delim
|
||||
.Ar file1 file2
|
||||
.Sh DESCRIPTION
|
||||
.Nm
|
||||
lines from
|
||||
.Ar file1
|
||||
and
|
||||
.Ar file2
|
||||
on a matching field.
|
||||
If one of the input files is '-', standard input is read for that file.
|
||||
.Pp
|
||||
Files are read sequentially and are assumed to be sorted on the join
|
||||
field.
|
||||
.Nm
|
||||
does not check the order of input, and joining two unsorted files will
|
||||
produce unexpected output.
|
||||
.Pp
|
||||
By default, input lines are matched on the first blank-separated
|
||||
field; output lines are space-separated and consist of the join field
|
||||
followed by the remaining fields from
|
||||
.Ar file1 ,
|
||||
then the remaining fields from
|
||||
.Ar file2 .
|
||||
.Sh OPTIONS
|
||||
.Bl -tag -width Ds
|
||||
.It Fl 1 Ar field
|
||||
Join on the
|
||||
.Ar field Ns th
|
||||
field of file 1.
|
||||
.It Fl 2 Ar field
|
||||
Join on the
|
||||
.Ar field Ns th
|
||||
field of file 2.
|
||||
.It Fl a Ar fileno
|
||||
Print unpairable lines from file
|
||||
.Ar fileno
|
||||
in addition to normal output.
|
||||
.It Fl e Ar string
|
||||
When used with
|
||||
.Fl o ,
|
||||
replace empty fields in the output list with
|
||||
.Ar string .
|
||||
.It Fl o Ar list
|
||||
Format output according to the string
|
||||
.Ar list .
|
||||
Each element of
|
||||
.Ar list
|
||||
may be either
|
||||
.Ar fileno.field
|
||||
or 0 (representing the join field).
|
||||
Elements in
|
||||
.Ar list
|
||||
may be separated by blanks or commas.
|
||||
For example,
|
||||
.Bd -literal -offset indent
|
||||
join -o "0 2.1 1.3"
|
||||
.Ed
|
||||
.Pp
|
||||
would print the join field, the first field of
|
||||
.Ar file2 ,
|
||||
then the third field of
|
||||
.Ar file1 .
|
||||
.Pp
|
||||
Only paired lines are formatted with the
|
||||
.Fl o
|
||||
option.
|
||||
Unpairable lines (selected with
|
||||
.Fl a
|
||||
or
|
||||
.Fl v )
|
||||
are printed raw.
|
||||
.It Fl t Ar delim
|
||||
Use the arbitrary string
|
||||
.Ar delim
|
||||
as field delimiter for both input and output.
|
||||
.It Fl v Ar fileno
|
||||
Print unpairable lines from file
|
||||
.Ar fileno
|
||||
instead of normal output.
|
||||
.El
|
||||
.Sh STANDARDS
|
||||
POSIX.1-2013.
|
||||
.Pp
|
||||
With the following exception:
|
||||
.Bl -bullet -offset indent
|
||||
.It
|
||||
Unpairable lines ignore formatting specified with
|
||||
.Fl o .
|
||||
.El
|
||||
.Pp
|
||||
The possibility of specifying multibyte delimiters of arbitrary
|
||||
length is an extension to the specification.
|
||||
Reference in New Issue
Block a user