Seq (Bash)

Uit De Vliegende Brigade
(Doorverwezen vanaf Seq)
Naar navigatie springen Naar zoeken springen

Use seq to generate a sequence of numbers. e.g., to be used in loops.

$ man seq

SEQ(1)                                             User Commands                                             SEQ(1)

NAME
       seq - print a sequence of numbers

SYNOPSIS
       seq [OPTION]... LAST
       seq [OPTION]... FIRST LAST
       seq [OPTION]... FIRST INCREMENT LAST

DESCRIPTION
       Print numbers from FIRST to LAST, in steps of INCREMENT.

       Mandatory arguments to long options are mandatory for short options too.

       -f, --format=FORMAT
              use printf style floating-point FORMAT

       -s, --separator=STRING
              use STRING to separate numbers (default: \n)

       -w, --equal-width
              equalize width by padding with leading zeroes

       --help display this help and exit

       --version
              output version information and exit

       If  FIRST  or INCREMENT is omitted, it defaults to 1.  That is, an omitted INCREMENT defaults to 1 even when
       LAST is smaller than FIRST.  The sequence of numbers ends when the sum of the current number  and  INCREMENT
       would  become  greater than LAST.  FIRST, INCREMENT, and LAST are interpreted as floating point values.  IN‐
       CREMENT is usually positive if FIRST is smaller than LAST, and INCREMENT is usually  negative  if  FIRST  is
       greater  than  LAST.  INCREMENT must not be 0; none of FIRST, INCREMENT and LAST may be NaN.  FORMAT must be
       suitable for printing one argument of type 'double'; it defaults to %.PRECf if FIRST,  INCREMENT,  and  LAST
       are all fixed point decimal numbers with maximum precision PREC, and to %g otherwise.

AUTHOR
       Written by Ulrich Drepper.

REPORTING BUGS
       GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
       Report seq translation bugs to <https://translationproject.org/team/>

COPYRIGHT
       Copyright   ©   2018   Free  Software  Foundation,  Inc.   License  GPLv3+:  GNU  GPL  version  3  or  later
       <https://gnu.org/licenses/gpl.html>.
       This is free software: you are free to change and redistribute it.  There is NO WARRANTY, to the extent per‐
       mitted by law.

SEE ALSO
       Full documentation at: <https://www.gnu.org/software/coreutils/seq>
       or available locally via: info '(coreutils) seq invocation'

GNU coreutils 8.30                                 September 2019                                            SEQ(1)

Examples

$ seq 1 5

1
2
3
4
5

Distribute a task over multiple threads: START is 2. END is the length of the array, and STEP is 32, the number of threads:

for i in `seq 2 32 $((${#j[@]}-1))`
do
	#
	echo "	Loop index: $i"
	#
	# Execute 32 threads
	########################################
	#
	wp post update  ${j[$i]} --post_name="" &
	wp post update  ${j[$i+1]} --post_name="" &
	wp post update  ${j[$i+2]} --post_name="" &
	wp post update  ${j[$i+3]} --post_name="" &
	wp post update  ${j[$i+4]} --post_name="" &
	wp post update  ${j[$i+5]} --post_name="" &
	wp post update  ${j[$i+6]} --post_name="" &
	wp post update  ${j[$i+7]} --post_name="" &
	wp post update  ${j[$i+8]} --post_name="" &
	wp post update  ${j[$i+9]} --post_name="" &
	wp post update  ${j[$i+10]} --post_name="" &
	wp post update  ${j[$i+11]} --post_name="" &
	wp post update  ${j[$i+12]} --post_name="" &
	wp post update  ${j[$i+13]} --post_name="" &
	wp post update  ${j[$i+14]} --post_name="" &
	wp post update  ${j[$i+15]} --post_name="" &
	wp post update  ${j[$i+16]} --post_name="" &
	wp post update  ${j[$i+17]} --post_name="" &
	wp post update  ${j[$i+18]} --post_name="" &
	wp post update  ${j[$i+19]} --post_name="" &
	wp post update  ${j[$i+20]} --post_name="" &
	wp post update  ${j[$i+21]} --post_name="" &
	wp post update  ${j[$i+22]} --post_name="" &
	wp post update  ${j[$i+23]} --post_name="" &
	wp post update  ${j[$i+24]} --post_name="" &
	wp post update  ${j[$i+25]} --post_name="" &
	wp post update  ${j[$i+26]} --post_name="" &
	wp post update  ${j[$i+27]} --post_name="" &
	wp post update  ${j[$i+28]} --post_name="" &
	wp post update  ${j[$i+29]} --post_name="" &
	wp post update  ${j[$i+30]} --post_name="" &
	wp post update  ${j[$i+31]} --post_name="" &
	wait
	#
done

See also