首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >shell脚本 从自定义的值中随机抽取+不重复

shell脚本 从自定义的值中随机抽取+不重复

原创
作者头像
陈不成i
修改2021-06-24 18:02:56
修改2021-06-24 18:02:56
3.9K00
代码可运行
举报
文章被收录于专栏:ops技术分享ops技术分享
运行总次数:0
代码可运行

一.简介

源码

代码语言:javascript
代码运行次数:0
运行
复制
#!/bin/bash

#数组
qiu=(0 1 2 3 4 5 6 7 8 9 )



#数组总长度
qiu_chang=${#qiu[*]}
let qiu_chang--

#重新计算数组,将原数组剔除,然后重新挨个加到原数组
shuzu(){
	local a=0
	unset qiu[$shu]
	for i in `echo ${qiu[*]}`
	do
		qiu[$a]=$i
		let a++
	done
}

if [ $# -ne 1 ];then
	echo "./xx.sh 5 来随机出5次"
	echo "当前数组:${qiu[*]}"
	exit
fi

#不能超过数组长度
if [ $1 -ge ${qiu_chang} ];then
	echo "不能超过数组长度"
	exit
fi

#根据下标来删除数组中的元素
for i in `seq 0 $1`
do
	shu=`echo $[RANDOM%qiu_chang]`
	#输出一下
	echo ${qiu[$shu]}
	shuzu
	let qiu_chang--
done

日期:2018/6/12 介绍:从数组里随机抽一个,但不会重复,相比之下python比较好做出效果

效果图:

二.使用

适用:centos6+ 语言:中文 注意:无

下载 wget https://raw.githubusercontent.com/goodboy23/shell/master/game/random_num.sh

执行 bash random_num.sh

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.简介
  • 二.使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档