一天一个shell实例(2)生成随机数(转)
给出一个程序,随机输出5个整数。
把问题分成三个步骤:
1,设置随机数总量和计数器
2,调用while循环,使循环次数为随机数总量
3,在while循环中产生随机数并输出
#!/bin/bash
MAX=5 #1
i=1 #2
echo "$MAX random numbers are generated:"
while [ "$i" -le $MAX ] #3
do
echo "$RANDOM" #4
let "i=i+1" #5
done
MAX=5 #1
i=1 #2
echo "$MAX random numbers are generated:"
while [ "$i" -le $MAX ] #3
do
echo "$RANDOM" #4
let "i=i+1" #5
done
#1:产生随机数的总量
#2:计数器,初值是1
#3:调用while使得i的值小于等于MAX,-le是小于等于的意思。对应的整数比较如下:
-eq 等于 while [ "$a" -eq "$b" ] [ ] 和test, /usr/bin/test,/usr/bin/[一样,是等价命令。
-ne 不等于 while [ "$a" -ne "$b" ]
-gt 大于 while [ "$a" -gt "$b" ]
-ge 大于等于 while [ "$a" -ge "$b" ]
-lt 小于 while [ "$a" -lt "$b" ]
-le 小于等于 while [ "$a" -le "$b" ]
< 小于(在双括号中使用) (("$a" < "$b")) (( ))是用于计算一个算术表达式的值。
<= 小于等于(在双括号中使用) (("$a" <= "$b"))
> 大于(在双括号中使用) (("$a" > "$b"))
>= 大于等于(在双括号中使用) (("$a" >= "$b"))
#4:产生一个随机数并输出,随机数范围0~32767
脚本执行结果:
root@Notebook-PC:/home/lwx/myshelltest# ./test3.sh
5 random numbers are generated:
30151
29006
26024
533
22498
5 random numbers are generated:
30151
29006
26024
533
22498