19b50d902SRodney W. Grimes.\" Copyright (c) 1993 29b50d902SRodney W. Grimes.\" The Regents of the University of California. All rights reserved. 39b50d902SRodney W. Grimes.\" 49b50d902SRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without 59b50d902SRodney W. Grimes.\" modification, are permitted provided that the following conditions 69b50d902SRodney W. Grimes.\" are met: 79b50d902SRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright 89b50d902SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer. 99b50d902SRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright 109b50d902SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer in the 119b50d902SRodney W. Grimes.\" documentation and/or other materials provided with the distribution. 129b50d902SRodney W. Grimes.\" 3. All advertising materials mentioning features or use of this software 139b50d902SRodney W. Grimes.\" must display the following acknowledgement: 149b50d902SRodney W. Grimes.\" This product includes software developed by the University of 159b50d902SRodney W. Grimes.\" California, Berkeley and its contributors. 169b50d902SRodney W. Grimes.\" 4. Neither the name of the University nor the names of its contributors 179b50d902SRodney W. Grimes.\" may be used to endorse or promote products derived from this software 189b50d902SRodney W. Grimes.\" without specific prior written permission. 199b50d902SRodney W. Grimes.\" 209b50d902SRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 219b50d902SRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 229b50d902SRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 239b50d902SRodney W. Grimes.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 249b50d902SRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 259b50d902SRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 269b50d902SRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 279b50d902SRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 289b50d902SRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 299b50d902SRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 309b50d902SRodney W. Grimes.\" SUCH DAMAGE. 319b50d902SRodney W. Grimes.\" 329b50d902SRodney W. Grimes.\" @(#)jot.1 8.1 (Berkeley) 6/6/93 33c3aac50fSPeter Wemm.\" $FreeBSD$ 349b50d902SRodney W. Grimes.\" 35d078aa13SPhilippe Charnier.Dd June 6, 1993 36d078aa13SPhilippe Charnier.Dt JOT 1 37d078aa13SPhilippe Charnier.Os 38d078aa13SPhilippe Charnier.Sh NAME 39d078aa13SPhilippe Charnier.Nm jot 40d078aa13SPhilippe Charnier.Nd print sequential or random data 41d078aa13SPhilippe Charnier.Sh SYNOPSIS 42d078aa13SPhilippe Charnier.Nm jot 43d078aa13SPhilippe Charnier.Op Fl cnr 44d078aa13SPhilippe Charnier.Op Fl b Ar word 45d078aa13SPhilippe Charnier.Op Fl w Ar word 46d078aa13SPhilippe Charnier.Op Fl s Ar string 47d078aa13SPhilippe Charnier.Op Fl p Ar precision 48d078aa13SPhilippe Charnier.Op reps Op begin Op end Op s 49d078aa13SPhilippe Charnier.Sh DESCRIPTION 50d078aa13SPhilippe Charnier.Nm Jot 519b50d902SRodney W. Grimesis used to print out increasing, decreasing, random, 529b50d902SRodney W. Grimesor redundant data, usually numbers, one per line. 53d078aa13SPhilippe Charnier.Pp 54d078aa13SPhilippe CharnierThe following options are available: 55d078aa13SPhilippe Charnier.Bl -tag -width indent 56d078aa13SPhilippe Charnier.It Fl r 5786fb9103SSteve PriceGenerate random data instead of the default sequential data. 58d078aa13SPhilippe Charnier.It Fl b Ar word 599b50d902SRodney W. GrimesJust print 60d078aa13SPhilippe Charnier.Ar word 619b50d902SRodney W. Grimesrepetitively. 62d078aa13SPhilippe Charnier.It Fl w Ar word 639b50d902SRodney W. GrimesPrint 64d078aa13SPhilippe Charnier.Ar word 659b50d902SRodney W. Grimeswith the generated data appended to it. 66d078aa13SPhilippe CharnierOctal, hexadecimal, exponential, 67d078aa13SPhilippe Charnier.Tn ASCII , 68d078aa13SPhilippe Charnierzero padded, 699b50d902SRodney W. Grimesand right-adjusted representations 709b50d902SRodney W. Grimesare possible by using the appropriate 71d078aa13SPhilippe Charnier.Xr printf 3 729b50d902SRodney W. Grimesconversion specification inside 73d078aa13SPhilippe Charnier.Ar word , 749b50d902SRodney W. Grimesin which case the data are inserted rather than appended. 75d078aa13SPhilippe Charnier.It Fl c 76d078aa13SPhilippe CharnierThis is an abbreviation for 77d078aa13SPhilippe Charnier.Fl w Ar %c . 78d078aa13SPhilippe Charnier.It Fl s Ar string 799b50d902SRodney W. GrimesPrint data separated by 80d078aa13SPhilippe Charnier.Ar string . 819b50d902SRodney W. GrimesNormally, newlines separate data. 82d078aa13SPhilippe Charnier.It Fl n 839b50d902SRodney W. GrimesDo not print the final newline normally appended to the output. 84d078aa13SPhilippe Charnier.It Fl p Ar precision 859b50d902SRodney W. GrimesPrint only as many digits or characters of the data 869b50d902SRodney W. Grimesas indicated by the integer 87d078aa13SPhilippe Charnier.Ar precision . 889b50d902SRodney W. GrimesIn the absence of 89d078aa13SPhilippe Charnier.Fl p , 909b50d902SRodney W. Grimesthe precision is the greater of the precisions of 91d078aa13SPhilippe Charnier.Ar begin 929b50d902SRodney W. Grimesand 93d078aa13SPhilippe Charnier.Ar end . 949b50d902SRodney W. GrimesThe 95d078aa13SPhilippe Charnier.Fl p 969b50d902SRodney W. Grimesoption is overridden by whatever appears in a 97d078aa13SPhilippe Charnier.Xr printf 3 989b50d902SRodney W. Grimesconversion following 99d078aa13SPhilippe Charnier.Fl w . 100d078aa13SPhilippe Charnier.El 101d078aa13SPhilippe Charnier.Pp 1029b50d902SRodney W. GrimesThe last four arguments indicate, respectively, 1039b50d902SRodney W. Grimesthe number of data, the lower bound, the upper bound, 1049b50d902SRodney W. Grimesand the step size or, for random data, the seed. 1059b50d902SRodney W. GrimesWhile at least one of them must appear, 1069b50d902SRodney W. Grimesany of the other three may be omitted, and 1079b50d902SRodney W. Grimeswill be considered as such if given as 108d078aa13SPhilippe Charnier.Fl "" . 1099b50d902SRodney W. GrimesAny three of these arguments determines the fourth. 1109b50d902SRodney W. GrimesIf four are specified and the given and computed values of 111d078aa13SPhilippe Charnier.Ar reps 1129b50d902SRodney W. Grimesconflict, the lower value is used. 1139b50d902SRodney W. GrimesIf fewer than three are specified, defaults are assigned 1149b50d902SRodney W. Grimesleft to right, except for 115d078aa13SPhilippe Charnier.Ar s , 1169b50d902SRodney W. Grimeswhich assumes its default unless both 117d078aa13SPhilippe Charnier.Ar begin 1189b50d902SRodney W. Grimesand 119d078aa13SPhilippe Charnier.Ar end 1209b50d902SRodney W. Grimesare given. 121d078aa13SPhilippe Charnier.Pp 1229b50d902SRodney W. GrimesDefaults for the four arguments are, respectively, 1239b50d902SRodney W. Grimes100, 1, 100, and 1, except that when random data are requested, 12486fb9103SSteve Pricethe seed, 12586fb9103SSteve Price.Ar s , 12686fb9103SSteve Priceis picked randomly. 127d078aa13SPhilippe Charnier.Ar Reps 1289b50d902SRodney W. Grimesis expected to be an unsigned integer, 1299b50d902SRodney W. Grimesand if given as zero is taken to be infinite. 130d078aa13SPhilippe Charnier.Ar Begin 1319b50d902SRodney W. Grimesand 132d078aa13SPhilippe Charnier.Ar end 1339b50d902SRodney W. Grimesmay be given as real numbers or as characters 134d078aa13SPhilippe Charnierrepresenting the corresponding value in 135d078aa13SPhilippe Charnier.Tn ASCII . 1369b50d902SRodney W. GrimesThe last argument must be a real number. 137d078aa13SPhilippe Charnier.Pp 1389b50d902SRodney W. GrimesRandom numbers are obtained through 139d078aa13SPhilippe Charnier.Xr random 3 . 1409b50d902SRodney W. GrimesThe name 141d078aa13SPhilippe Charnier.Nm 1429b50d902SRodney W. Grimesderives in part from 143d078aa13SPhilippe Charnier.Nm iota , 1449b50d902SRodney W. Grimesa function in APL. 145d078aa13SPhilippe Charnier.Sh EXAMPLES 1469b50d902SRodney W. GrimesThe command 147d078aa13SPhilippe Charnier.Dl jot 21 -1 1.00 148d078aa13SPhilippe Charnier.Pp 149d078aa13SPhilippe Charnierprints 21 evenly spaced numbers increasing from -1 to 1. 150d078aa13SPhilippe CharnierThe 151d078aa13SPhilippe Charnier.Tn ASCII 152d078aa13SPhilippe Charniercharacter set is generated with 153d078aa13SPhilippe Charnier.Dl jot -c 128 0 154d078aa13SPhilippe Charnier.Pp 1559b50d902SRodney W. Grimesand the strings xaa through xaz with 156d078aa13SPhilippe Charnier.Dl jot -w xa%c 26 a 157d078aa13SPhilippe Charnier.Pp 1589b50d902SRodney W. Grimeswhile 20 random 8-letter strings are produced with 159d078aa13SPhilippe Charnier.Dl "jot -r -c 160 a z | rs -g 0 8" 160d078aa13SPhilippe Charnier.Pp 1619b50d902SRodney W. GrimesInfinitely many 162d078aa13SPhilippe Charnier.Em yes Ns 's 1639b50d902SRodney W. Grimesmay be obtained through 164d078aa13SPhilippe Charnier.Dl jot -b yes 0 165d078aa13SPhilippe Charnier.Pp 1669b50d902SRodney W. Grimesand thirty 167d078aa13SPhilippe Charnier.Xr ed 1 1689b50d902SRodney W. Grimessubstitution commands applying to lines 2, 7, 12, etc. is 1699b50d902SRodney W. Grimesthe result of 170d078aa13SPhilippe Charnier.Dl jot -w %ds/old/new/ 30 2 - 5 171d078aa13SPhilippe Charnier.Pp 1729b50d902SRodney W. GrimesThe stuttering sequence 9, 9, 8, 8, 7, etc. can be 1734b9cb490SKris Kennawayproduced by suitable choice of step size, 1749b50d902SRodney W. Grimesas in 1754b9cb490SKris Kennaway.Dl jot - 9 0 -.5 176d078aa13SPhilippe Charnier.Pp 1779b50d902SRodney W. Grimesand a file containing exactly 1024 bytes is created with 178d078aa13SPhilippe Charnier.Dl jot -b x 512 > block 179d078aa13SPhilippe Charnier.Pp 1809b50d902SRodney W. GrimesFinally, to set tabs four spaces apart starting 1819b50d902SRodney W. Grimesfrom column 10 and ending in column 132, use 182d078aa13SPhilippe Charnier.Dl expand -`jot -s, - 10 132 4` 183d078aa13SPhilippe Charnier.Pp 1849b50d902SRodney W. Grimesand to print all lines 80 characters or longer, 185d078aa13SPhilippe Charnier.Dl grep `jot -s \&"\&" -b \&. 80` 186d078aa13SPhilippe Charnier.Pp 187d078aa13SPhilippe Charnier.Sh SEE ALSO 188d078aa13SPhilippe Charnier.Xr ed 1 , 189d078aa13SPhilippe Charnier.Xr expand 1 , 190d078aa13SPhilippe Charnier.Xr rs 1 , 191d078aa13SPhilippe Charnier.Xr yes 1 , 192d078aa13SPhilippe Charnier.Xr printf 3 , 193d078aa13SPhilippe Charnier.Xr random 3 1948db8a33bSSheldon Hearn.Sh BUGS 1958db8a33bSSheldon HearnConversion format specifiers for 1968db8a33bSSheldon Hearn.Xr printf 3 1978db8a33bSSheldon Hearnare limited to those of the form 1988db8a33bSSheldon Hearn.Dl %[#][ ][{+,-}][0-9]*[.[0-9]*]? 1998db8a33bSSheldon Hearnwhere 2008db8a33bSSheldon Hearn.Dq ? 2018db8a33bSSheldon Hearnmust be one of 2028db8a33bSSheldon Hearn.Dl [l]{d,i,o,u,x} 2038db8a33bSSheldon Hearnor 2048db8a33bSSheldon Hearn.Dl {c,e,f,g,D,E,G,O,U,X} 2058db8a33bSSheldon Hearn.Pp 2068db8a33bSSheldon HearnNo bounds-checking is performed on numeric values, so arithmetic overflow 2078db8a33bSSheldon Hearnwill cause a fatal error. 208