208 lines
4.6 KiB
Groff
208 lines
4.6 KiB
Groff
.\" $NetBSD: seq.1,v 1.12 2022/02/28 13:49:50 wiz Exp $
|
|
.\"
|
|
.\" Copyright (c) 2005 The NetBSD Foundation, Inc.
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" This code is derived from software contributed to The NetBSD Foundation
|
|
.\" by Brian Ginsbach.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
|
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
|
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
|
.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
|
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
.\" POSSIBILITY OF SUCH DAMAGE.
|
|
.\"
|
|
.\"
|
|
.Dd December 17, 2018
|
|
.Dt SEQ 1
|
|
.Os
|
|
.Sh NAME
|
|
.Nm seq
|
|
.Nd print sequences of numbers
|
|
.Sh SYNOPSIS
|
|
.Nm
|
|
.Op Fl w
|
|
.Op Fl f Ar format
|
|
.Op Fl s Ar string
|
|
.Op Fl t Ar string
|
|
.Op Ar first Op Ar incr
|
|
.Ar last
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
utility prints a sequence of numbers, one per line by default,
|
|
from
|
|
.Ar first
|
|
.Pq default 1
|
|
to as near
|
|
.Ar last
|
|
as possible, in increments of
|
|
.Ar incr
|
|
.Pq default 1 .
|
|
When
|
|
.Ar first
|
|
is larger than
|
|
.Ar last ,
|
|
the default
|
|
.Ar incr
|
|
is -1.
|
|
.Pp
|
|
All numbers are interpreted as floating point.
|
|
.Pp
|
|
Normally integer values are printed as decimal integers.
|
|
.Pp
|
|
The
|
|
.Nm
|
|
utility accepts the following options:
|
|
.Bl -tag -width Ar
|
|
.It Fl f Ar format
|
|
Use a
|
|
.Xr printf 3
|
|
style
|
|
.Ar format
|
|
to print each number.
|
|
Only the
|
|
.Cm A ,
|
|
.Cm a ,
|
|
.Cm E ,
|
|
.Cm e ,
|
|
.Cm F ,
|
|
.Cm f ,
|
|
.Cm G ,
|
|
.Cm g ,
|
|
and
|
|
.Cm %
|
|
conversion characters are valid, along with any optional
|
|
flags and an optional numeric minimum field width or precision.
|
|
The
|
|
.Ar format
|
|
can contain character escape sequences in backslash notation as
|
|
defined in
|
|
.St -ansiC .
|
|
The default is
|
|
.Cm %g .
|
|
.It Fl s Ar string
|
|
Use
|
|
.Ar string
|
|
to separate numbers.
|
|
The
|
|
.Ar string
|
|
can contain character escape sequences in backslash notation as
|
|
defined in
|
|
.St -ansiC .
|
|
The default is
|
|
.Cm \en .
|
|
.It Fl t Ar string
|
|
Use
|
|
.Ar string
|
|
to terminate sequence of numbers.
|
|
The
|
|
.Ar string
|
|
can contain character escape sequences in backslash notation as
|
|
defined in
|
|
.St -ansiC .
|
|
The default is
|
|
.Cm \en .
|
|
.It Fl w
|
|
Equalize the widths of all numbers by padding with zeros as necessary.
|
|
This option has no effect with the
|
|
.Fl f
|
|
option.
|
|
If any sequence numbers will be printed in exponential notation,
|
|
the default conversion is changed to
|
|
.Cm %e .
|
|
.El
|
|
.Sh EXIT STATUS
|
|
.Ex -std
|
|
.Sh EXAMPLES
|
|
Generate a sequence from 1 to 3 (inclusive) with a default increment of 1:
|
|
.Bd -literal -offset indent
|
|
$ seq 1 3
|
|
1
|
|
2
|
|
3
|
|
.Ed
|
|
.Pp
|
|
Generate a sequence from 3 to 1 (inclusive) with a default increment of -1:
|
|
.Bd -literal -offset indent
|
|
$ seq 3 1
|
|
3
|
|
2
|
|
1
|
|
.Ed
|
|
.Pp
|
|
Generate a sequence from 0 to 0.1 (inclusive) with an increment of 0.05
|
|
and padding with leading zeroes:
|
|
.Bd -literal -offset indent
|
|
$ seq -w 0 .05 .1
|
|
0.00
|
|
0.05
|
|
0.10
|
|
.Ed
|
|
.Pp
|
|
Generate a sequence from 1 to 3 (inclusive) with a default increment of 1,
|
|
and a custom separator string:
|
|
.Bd -literal -offset indent
|
|
$ seq -s "," 1 3
|
|
1,2,3
|
|
.Ed
|
|
.Pp
|
|
Generate a sequence from 1 to 2 (inclusive) with an increment of 0.2 and
|
|
print the results with two digits after the decimal point (using a
|
|
.Xr printf 3
|
|
style format):
|
|
.Bd -literal -offset indent
|
|
$ seq -f %.2f 1 0.2 2
|
|
1.00
|
|
1.20
|
|
1.40
|
|
1.60
|
|
1.80
|
|
2.00
|
|
.Ed
|
|
.Sh SEE ALSO
|
|
.Xr jot 1 ,
|
|
.Xr printf 1 ,
|
|
.Xr printf 3
|
|
.Sh HISTORY
|
|
The
|
|
.Nm
|
|
command first appeared in Version\~8
|
|
.At .
|
|
A
|
|
.Nm
|
|
command appeared in
|
|
.Nx 3.0 .
|
|
This command was based on the command of the same name in
|
|
.Tn "Plan 9 from Bell Labs"
|
|
and the
|
|
.Tn GNU
|
|
core utilities.
|
|
The
|
|
.Tn GNU
|
|
.Nm
|
|
command first appeared in the 1.13 shell utilities release.
|
|
.Sh BUGS
|
|
The
|
|
.Fl w
|
|
option does not handle the transition from pure floating point
|
|
to exponent representation very well.
|
|
The
|
|
.Nm
|
|
command is not bug for bug compatible with other implementations.
|