此链接通往 Bash Shell 编程学习的目录导航 ,从入门到放弃,感兴趣的可以去看看:
随机数生成器 —— $RANDOM:
Bash Shell 中有内建的随机数生成器: $RANDOM
root@zhengzelin:~$ echo $RANDOM 生成值得默认范围是 0-32767
13147
如果你要指定随机数生成的范围的话:
root@zhengzelin:~$ echo $[RANDOM%50]
输出值得范围是:0-49
*******************************************************************************************************************************
如果你要取值的范围是 31-37;那么你该如何取?
办法: 37-31=6;使用 $RANDOM 生成 0-6 的随机数,然后在随机数的后面+31即可;
如果要生成 0-6 的随机数: 那就使用 $RANDOM%7 即可!
root@zhengzelin:~$ echo $[RANDOM%7+31]
31-37
当 RANDOM%7 = 0 , 0+31=31
当 RANDOM%7 = 1 , 0+31=32
.... , .....
当 RANDOM%7 = 6 , 0+31=37
# 当 RANDOM%7 生成的随机数最大为6!最小为 0 !
echo -e 结合 $RANDOM 生成随机颜色的字体
字体颜色范围的话就是: 31-37
定义变量: COLOR=$[RANDOM%7+31]
必须使用这种格式来输出:
格式1(正确:)
root@zhengzelin:~# COLOR=$[RANDOM%7+31];echo -e "\e[1;${COLOR}mthis is a test\e[0m"
#必须使用{} 将变量名隔开!
格式2(错误:)
你可以看看下面这个格式的输出结果是什么?
root@zhengzelin:~# COLOR=$[RANDOM%7+31]
root@zhengzelin:~# echo -e "\e[1;${COLOR}mthis is a test\e[0m"
格式1: (正确)
COLOR=\$[RANDOM%7+31];echo -e "\e[1;${COLOR}mthis is a test\e[0m"
格式2:(错误)
root@zhengzelin:~# COLOR=\$[RANDOM%7+31]
root@zhengzelin:~# echo -e "\e[1;${COLOR}mthis is a test\e[0m"
很明显这个是错误的,原因也显而易见吧!跟上面 格式1 对比一下你就知道了!