玩转shell-shell抽奖程序(github源码)

微信小程序抽奖插件分享 这样我们刷新页面即可实现抽奖功能;该网站有这么多示例可以选择。 阅读详情


在这里插入图片描述

前言

此篇博文做 shell 抽奖程序的介绍,有几种类型的抽奖程序,请见如下

环境

  • bash shell 3
  • centos 7
  • vim 编辑器

代码

抽奖程序一

这个抽奖程序要求需要经过多轮抽奖并显示每轮的结果,每轮尽量筛除一半的人,最后一轮只留下一人,最后一人就是获奖者

#! /bin/bash
# 循环读取多行数据
chouJiang(){
    while read -a line
    do
            arr+=(${line[@]});
    done;
    # 若没有抽奖人
    if((${#arr[@]}==0))
    then
            printf "无人抽奖!\n";
            exit;
    fi;
    # 记录抽奖轮次
    count=0;
    printf "\033[;32m \t%s \033[0m" "抽奖人员有:";
    printf "${arr[*]}\n";
    # 抽奖进行多轮次循环
    while((1))
    do
            # 程序最终出口
            if((${#arr[@]}<=1))
            then
                    printf "\033[;32m \n\t%s \033[0m\033[;31m %s\n \033[0m" "经过$count轮抽奖,最终获奖者:" "${arr[0]}";
                    break;
            fi;
            # 每轮开始的初始操作
            result=();
            let "count++";
            printf "\033[;32m \t%s \033[0m" "第$count轮抽奖:";
            # 当前轮次抽取 arr 数组中的人
            for i in ${!arr[@]}
            do
                    # 通过随机数看是否选出他,若选中就保存到 result 数组
                    if((RANDOM%2==0))
                    then
                            result+=(${arr[$i]});
                    fi;
            done;
            # 若谁都没被选到就重抽
            if((${#result[@]}!=0))
            then
                    # 输出当前轮次被选到的人
                    printf "\033[;33m %s\n \033[0m" "${result[*]}";
                    arr=(${result[@]});
            else
                    printf "无人抽中,再来一次\n";
            fi;
    done;
}

抽奖程序二

这个抽奖程序要求只用显示最后获奖者,传一个参数表示有几个人获奖

#! /bin/bash
chouJiang{
    while read -a line
    do
            arr+=(${line[@]});
    done;

    if((${#arr[@]}<$1))
    then
            printf "\033[;31m %s\n \033[0m" "输入异常,结束!";
            exit;
    fi;

    # 数组长度
    size=${#arr[@]};

    # 轮次
    count=0;

    # count 轮循环,每次取一人
    while((count<$1))
    do
            index=$((RANDOM%size));
            while [[ ! ${arr[index]} ]]
            do
                    index=$((RANDOM%size));
            done;
            result+=(${arr[index]});
            unset arr[index];
            ((count++));
    done;

    # 输出获奖者
    printf "\033[;32m %s\n \033[0m" "${result[*]}";
}

终极版抽奖程序三

这一版本抽奖程序是经过了最终优化的,该版本 bash 编写的抽奖程序已经发布于 github 上,并且其中已经提供了抽奖成员名单,你不用这个现成的名单也可以,用自己的也行,bash 编写的抽奖项目 github 地址如下:

github:lottery4bash

需要的童鞋们可以自取,可以用于临时随机的抽奖,支持抽一人和抽多人。只用将这个 lucky.sh 拷贝到自己的服务器中,需要的时候一用即可,README.md 中写有非常详细的项目介绍和使用说明,并且支持中英双译哦!

在这里插入图片描述在这里插入图片描述

微信小程序安全审计实战:从逆向到漏洞挖掘的完整指南 在移动应用开发领域,应用安全审计是保障用户数据和业务逻辑安全的核心环节。其基本原理是通过静态代码分析与动态渗透测试相结合,系统性地评估应用在客户端、通信层和服务端可能存在的安全风险。这项技术的核心价值在于主动发现潜在漏洞,防止数据泄露、越权访问和业务逻辑绕过等安全事件,广泛应用于金融、电商、政务等对安全性要求极高的场景。特别是在微信小程序这类融合了前端、后端与平台特有运行环境的混合应用中,传统的Web或移动App安全测试方法往往无法完全覆盖其独特的安全模型。本指南聚焦于小程序安全审计,详细阐述了如何通过逆向 阅读详情

相关推荐

Web渗透实战:从逻辑漏洞与越权到getshell的完整路径解析

在网络安全领域,漏洞挖掘与利用是攻防对抗的核心。其基本原理在于识别并利用软件系统在设计、实现或配置上的缺陷,以绕过安全控制,获取未授权访问或提升权限。从技术价值看,深入理解漏洞成因与利用链,不仅能有效评估系统风险,更是构建纵深防御体系的基础。逻辑漏洞与越权漏洞作为两类常见的高危缺陷,常出现在业务流程与权限控制模块,是攻击者实现权限突破的关键切入点。逻辑漏洞源于业务规则校验不严,如支付流程绕过、验证码失效等;越权漏洞则因访问控制缺失,导致用户能操作超出自身权限的数据或功能。在实际应用场景中,攻击者常将信息收集

jackleechina2011212的博客 126

2.7K Star,酷炫抽奖程序开源了

该项目现在支持使用 Docker 进行部署。Docker 是一个轻量级的容器化平台,可以让您快速地部署、测试和运行应用程序。本文档将向您介绍如何使用 Docker 部署该项目。

GitHub指北 3406

Web渗透测试实战:从信息搜集到权限获取的50个核心技巧

Web渗透测试是网络安全领域的关键实践,其核心在于系统性地识别和利用应用层漏洞。其基本原理是通过模拟攻击者行为,对Web应用进行授权安全评估,以发现潜在风险。这项技术的核心价值在于帮助企业主动发现并修复安全缺陷,提升整体防御能力,广泛应用于金融、电商、政务等各类在线业务系统的安全测试中。在实战中,高效的信息搜集与精准的漏洞探测是成功的关键。例如,通过子域名挖掘和端口扫描等被动与主动结合的技术,可以全面绘制目标资产地图;而针对SQL注入、文件上传等常见漏洞,采用绕过WAF和定制化字典等策略,能显著提升测试效率

weixin_33694620的博客 349

年会抽奖软件

请访问我的个人博客 sourcod 公司开年会,要求我们做一个抽奖程序,由于时间比较紧,所以就在网上找了几个抽奖软件&amp;amp;程序。 吉详抽奖软件 一个简单的在线抽奖系统 在线抽奖 抽奖软件大全 后来自己写了一个 放到github上了h5抽奖软件 在线地址:http://sourcod.coding.me/lottery/ 图片加载有点慢。等一会就出来了。...

sourcod的博客 1万+

渗透测试工程师进阶指南:从工具使用到攻防思维与实战方法论

渗透测试作为信息安全领域的核心实践,旨在通过模拟攻击来评估系统防御的有效性。其原理在于主动发现并利用安全漏洞,以验证安全控制措施的实际效果。掌握渗透测试技术,对于构建主动防御体系、提升整体安全水位具有关键价值,广泛应用于企业安全评估、红蓝对抗及合规审计等场景。在实战中,渗透测试工程师需超越对自动化工具的依赖,深入理解漏洞产生的上下文环境与业务逻辑,并具备将SQL注入、横向移动等孤立技术点串联成完整攻击链的思维。本文聚焦于如何从执行者进阶为策略制定者,通过构建系统性的攻击视角与自动化工具链,实现从漏洞发现到风

weixin_30655569的博客 316

渗透测试实战指南:从信息收集到权限维持的完整流程解析

渗透测试作为网络安全评估的核心方法,其本质是通过模拟真实攻击者的技术与思维,系统性评估目标系统的安全防御能力。其技术原理遵循严谨的工程化流程,从信息收集、漏洞分析、利用渗透,到权限提升与内网横向移动,最终实现权限维持。这一过程不仅依赖自动化工具,更强调基于攻击者视角(红队思维)的手工测试与深度分析。在应用场景上,它广泛应用于企业安全建设、合规审计及安全运维人员的技能提升。本文聚焦于实战,详细拆解了渗透测试各阶段的核心操作与工具链,特别是如何通过OSINT、Nmap扫描、漏洞利用及权限维持等技术,完成一次从外

weixin_30266885的博客 381

【免费下载】 幸运抽奖程序:基于Vue的高效年会解决方案

- **大规模支持**: 本程序理论上支持配置百万级别的参与者,虽初始加载大名单会有一定延迟,但不影响实际抽奖流畅性。 - **灵活配置**: 用户可自由设定抽奖总人数、奖项等级及各等奖项的具体获奖人数,甚至包括自定义奖项和人数调整。 - **结果显示与管理**: 抽奖结果清晰展示,允许删除已抽中号码重新参与,前提是未开启全员参与模式。 - **数据导入便捷**: 支持名单导入,包含姓名与号码,以...

gitblog_07327的博客 980

漏洞挖掘技术变现指南:从接私活到构建个人安全副业

漏洞挖掘作为网络安全领域的核心技术,其本质是通过系统性地发现软件或系统中的安全缺陷,评估潜在风险。其技术原理涉及对应用逻辑、输入验证、配置错误等多层面的深入分析,旨在主动防御而非被动响应。这项技术的核心价值在于将安全风险前置,在攻击发生前进行修复,从而保护企业资产与用户数据。在应用场景上,它不仅是大型安全团队的专属,更广泛服务于中小企业安全评估、合规检测及产品上线前审计等需求。随着数字化转型加速,企业对实战化安全服务的需求日益增长,这为掌握漏洞挖掘技能的技术人员提供了将能力产品化、通过接私活、参与众测等方式

weixin_30836759的博客 359

SRC漏洞挖掘实战指南:从零构建白帽子的系统化狩猎思维与工具链

网络安全领域中,漏洞挖掘是识别和利用系统安全缺陷的核心技术活动。其基本原理是通过系统性的信息收集、攻击面测绘和针对性测试,发现软件或网络架构中可能被恶意利用的弱点。掌握这项技术不仅有助于理解现代应用安全防御的薄弱环节,更能为企业安全建设提供正向价值。在工程实践层面,高效的信息收集(如子域名枚举、端口扫描)与精准的漏洞探测(如SQL注入、越权访问测试)构成了技术落地的关键。本文聚焦于**SRC(安全应急响应中心)漏洞挖掘**这一具体应用场景,深入剖析如何将通用的安全测试方法论,转化为在合规框架内持续产出有效漏

weixin_30920853的博客 431

Web漏洞挖掘实战:从SQL注入到逻辑漏洞的完整攻防指南

在网络安全领域,漏洞挖掘是识别和修复软件安全缺陷的核心技术。其基本原理是通过系统化测试,在授权范围内发现可能被恶意利用的设计缺陷或逻辑盲点。这项技术的价值在于能够在攻击者之前发现安全弱点,从而推动修复,提升数字世界的整体安全水平。在应用场景上,Web应用因其攻击面广泛、反馈直接,成为最适合初学者入门的典型战场。本文聚焦于SQL注入、XSS跨站脚本、CSRF等常见Web漏洞类型,深入剖析其挖掘思路与验证方法,并系统梳理从信息收集到报告撰写的完整工作流程,为安全从业者提供一套可复用的实战框架。

weixin_30644369的博客 398

SRC漏洞挖掘实战:从信息搜集到业务逻辑漏洞的狩猎指南

漏洞挖掘是网络安全领域的核心实践,其本质是系统性地发现和利用软件或系统中的安全缺陷。其原理在于任何由人设计和实现的复杂系统,在业务逻辑、输入验证、访问控制或配置管理层面都可能存在未被察觉的脆弱点。掌握漏洞挖掘技术,对于构建主动防御体系、提升产品安全水位具有关键价值,广泛应用于渗透测试、红蓝对抗和安全众测(SRC)等场景。在SRC漏洞挖掘这一特定应用中,成功的关键往往在于高效的信息搜集与对业务逻辑的深度理解。通过子域名枚举、端口扫描、Web指纹识别以及Github敏感信息挖掘等手段,可以全面绘制攻击面。在此基

aqc802886的博客 347

5分钟快速上手cloudpan189-go:天翼云盘CLI安装与首次登录教程

cloudpan189-go 是一款基于 GO 语言开发的天翼云盘CLI命令行客户端,它用仿 Linux shell 的命令方式管理天翼云盘,支持文件上传下载、目录浏览、分享链接、签到抽奖等常用操作,还支持个人云与家庭云无缝切换。本文是一份面向新手的 cloudpan189-go 教程,手把手带你 5 分钟完成天翼云盘CLI安装与首次登录,从此告别网页版繁琐操作,在终端里高效管理网盘文件。 ##

gitblog_00887的博客 914

SRC漏洞挖掘实战指南:从信息收集到报告提交的全流程解析

在网络安全领域,黑盒测试是一种常见的评估方法,其核心原理是通过模拟攻击者视角,在未知系统内部结构的情况下,对目标进行安全测试。这种测试方法的技术价值在于能够真实反映系统在外部威胁下的脆弱性,帮助企业发现潜在风险。在实际应用场景中,安全应急响应中心(SRC)的漏洞挖掘正是黑盒测试的重要实践,它要求测试者具备系统的信息收集能力、精准的漏洞检测技巧以及专业的报告撰写水平。通过掌握高效的资产测绘工具如FOFA和OneForAll,结合Burp Suite等手动测试平台,安全人员可以构建从侦察到利用的完整攻击链,从而

chuiqi9947的博客 743

cloudpan189-go完全指南:天翼云盘命令行客户端入门与核心特性全解析

cloudpan189-go 是一款基于 Go 语言开发的天翼云盘命令行客户端(CLI),它以仿 Linux shell 的方式在终端中管理天翼云盘文件。相比网页版,这款天翼云盘CLI支持断点续传下载、并发上传、多账号登录、家庭云切换、导出导入迁移等强大特性,跨平台运行于 Windows、macOS 和 Linux,非常适合 NAS 用户、开发者和自动化脚本爱好者。本文将从安装、登录、文件管理到高

gitblog_00462的博客 296

随机抽奖系统源码

抽奖系统源码,取不重复随机数,手机号码抽奖!

年会抽奖程序源码,网页版的,浏览器打开即可使用

这是去年写的一个抽奖程序,实际没用到,可以指定中奖者。。哈哈,懂js的可以自己研究下,部分代码是我写的,哪里不懂可以问我~~

BiliBiliToolPro深度揭秘:3大架构设计让B站自动化任务效率翻倍

# BiliBiliToolPro深度揭秘:3大架构设计让B站自动化任务效率翻倍 你是否还在为每天手动完成B站任务而烦恼?BiliBiliToolPro通过创新的架构设计,将繁琐的B站日常任务自动化,让技术爱好者能够轻松管理多个账号,实现真正的"解放双手"。这款开源工具不仅支持Docker、青龙面板、K8s等多种部署方式,更通过模块化设计、异步任务调度和智能API封装三大核心技术,为B站用户提供

gitblog_00272的博客 641

抽奖程序Lottery program

git clone https://github.com/moshang-xc/lottery.git cd lottery # Server plugin installation cd server npm install # Front-end plugin installation cd ../product npm install # Package npm run build # Running npm run serve # Developing & debugging npm run dev

上一篇: 玩转linux三剑客-三剑客实战经典例题
下一篇: 更换idea的scheme主题
abcnull
博客等级 码龄9年 559粉丝 547原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

abcnull

您的打赏是我创作的动力之一

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值