如何 打印随机颜色的字体? Bash 中的 $RANDOM ——随机数生成器 如何使用?


 

        此链接通往 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-37RANDOM%7 = 0 , 0+31=31RANDOM%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"

如何 打印随机颜色的字体? Bash 中的 $RANDOM ——随机数生成器 如何使用?_第1张图片
格式2:(错误)

root@zhengzelin:~# COLOR=\$[RANDOM%7+31] 
root@zhengzelin:~# echo -e "\e[1;${COLOR}mthis is a test\e[0m"

如何 打印随机颜色的字体? Bash 中的 $RANDOM ——随机数生成器 如何使用?_第2张图片
很明显这个是错误的,原因也显而易见吧!跟上面 格式1 对比一下你就知道了!

你可能感兴趣的:(shell,Other,linux,echo,bash)