linux:使用seq命令产生数字序列

来源:互联网 发布:c语言基础教程pdf 编辑:程序博客网 时间:2024/06/07 11:48

有些场景下,需要一个数字的序列,这时可以使得seq命令来产生

NAME       seq - print a sequence of numbersSYNOPSIS       seq [OPTION]... LAST       seq [OPTION]... FIRST LAST       seq [OPTION]... FIRST INCREMENT LASTDESCRIPTION       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

示例1
:产生1-3之间的数字:
qingsong@db2a:/tmp$ seq 3
1
2
3

示例2:产生10-15之间的数字:
qingsong@db2a:/tmp$ seq 10 15
10
11
12
13
14
15

示例3:产生10-20之间的偶数
qingsong@db2a:/tmp$ seq 10 2 20
10
12
14
16
18
20

示例4:产生1-100之间的数字,中间用“+”隔开,然后计算它们它们的和
qingsong@db2a:/tmp$ seq -s "+" 1 100
1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31+32+33+34+35+36+37+38+39+40+41+42+43+44+45+46+47+48+49+50+51+52+53+54+55+56+57+58+59+60+61+62+63+64+65+66+67+68+69+70+71+72+73+74+75+76+77+78+79+80+81+82+83+84+85+86+87+88+89+90+91+92+93+94+95+96+97+98+99+100
qingsong@db2a:/tmp$ echo $[ `seq -s "+" 1 100` ]
5050  

当然,seq命令产生的数字序列是有序的,如果要产生随机数,可以使用RANDOM环境变量,它产生0到32767之间的随机数
qingsong@db2a:/tmp$ echo $RANDOM
5479
qingsong@db2a:/tmp$ echo $RANDOM
15558
qingsong@db2a:/tmp$ echo $RANDOM
8041