概述
1.shell获取指定范围的随机数
1.1 获取F范围【1-E】内的随机数
echo $((RANDOM%E+1))
1.2 获取40范围【1-40】的随机数
echo $((RANDOM%40+1))
shell脚本生成[4,9]范围内的随机整数,包含边界值4和9,并将随机数序列存放在一个数组中。
功能要求:
要求不能有重复的随机数. 参考:shell不重复随机数生成方法(模拟彩票随机抽奖)
代码示例:
#!/bin/sh
declare -a arr #声明arr为数组
arr=(`seq 4 9 | awk 'BEGIN{srand();ORS=" "} {b[rand()]=$0} END{for(x in b) print b[x]}'`)
echo ${arr[*]} #打印数组array的所有元素
exit 0
程序说明:
生成[4,9]范围内不重复的随机整数,并保存到数组arr中。
seq 4 9 用于生成4~9的整数序列(包含边界值4和9)。
awk中的rand() 函数用于随机产生一个0到1之间的小数值(保留小数点后6位)。
由于rand()只生成一次随机数,要使用srand() 函数使随机数滚动生成(括号里留空即默认采用当前时间作为随机计数器的种子)。www.jbxue.com这样以秒为间隔,随机数就能滚动随机生成了。
限制:
由于以秒为间隔,所以如果快速连续运行两次脚本(1s内),发现生成的随机数还是一样的。
2.shell生成指定范围随机数与随机字符串
2
最后
以上就是无聊蚂蚁为你收集整理的linux编写随机数脚本,shell编程中指定范围的随机数生成实现代码示例的全部内容,希望文章能够帮你解决linux编写随机数脚本,shell编程中指定范围的随机数生成实现代码示例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复