【shell案例】学员管理系统「建议收藏」
2023-06-13 09:14:45 时间
大家好,又见面了,我是你们的朋友全栈君。
前言
学员管理系统涉及到学员的增删改查,这是一个综合性比较强的项目,在所有的编程语言里都会有不同版本的学员信息管理系统,难度适中
效果截图
学员管理系统源码
#!/bin/bash
## 随机点名册
while true
do
echo "学生随机点名系统"
echo "1. 添加学员名单"
echo "2. 遍历学员名单"
echo "3. 随机点名"
echo "4. 删除某个学员的信息"
echo "5. 退出"
read -p "请输入你要选择的序号: " num
case $num in
1)
name(){
while true
do
read -p "填写要添加的名字: " num1
if [ -f namelist.txt ];then
name1=`grep $num1 namelist.txt`
else
echo "正在键入信息请稍后..."
sleep 2
touch namelist.txt
name1=`grep $num1 namelist.txt`
fi
if [[ $num1 == $name1 ]];then
echo "该学员已经存在!"
else
echo $num1 >> namelist.txt
read -p "是否继续添加Y|N: " num2
if [ $num2 == "Y" ] || [ $num2 == "y" ];then
name
#echo "学员添加成功!"
elif [ $num2 == "N" ] || [ $num == "n" ];then
echo "请重新确认学员姓名"
break
else
echo "你输入的字符有误,请输入Y|N"
break
fi
fi
done
}
name
;;
2)
echo "你选择的是遍历学员名单,正在为您遍历请稍后..."
for i in `cat namelist.txt`
do
echo $i
sleep 1
done
echo "遍历完成"
total=`cat namelist.txt |wc -l`
echo "已为您遍历 $total 个学员"
;;
3)
while(true)
do
line=`cat namelist.txt |wc -l`
num3=$[RANDOM%line+1]
sed -n "${num3}p" namelist.txt
sleep 0.3
read -p "是否要返回学员管理系统y/n: " input
if [ $input == "Y" ] || [ $input == "y" ];then
echo "正在返回请稍后"
echo ''
break
elif [ $input == "N" ] || [ $input == "n" ];then
echo "暂时没想到你不回学员管理系统还能干啥,要不搭建一套架构?"
else
echo "你输入的字符有误,请输入Y|N"
break
fi
done
clear
echo ""
echo "===============学员管理系统============"
echo "==========欢迎来到学员管理系统========="
;;
4)
while(true)
do
cat namelist.txt
read -p "请输入要删除的学员: " num4
while read line
do
#echo $line
if [ $line == $num4 ];then
sed -i "/${num4}/d" namelist.txt
#name=`grep $num4 namelist.txt`
#if [[ $num4 == $name ]];then
# sed -i "/${num4}/d" namelist.txt
echo "删除成功!"
#else
# echo " "
fi
done < namelist.txt
read -p "是否返回学生系统管理首页Y|N: " back
if [ $back == "y" ] || [ $back == "Y" ];then
echo "正在返回请稍后"
break
else
echo ""
fi
done
clear
echo ""
echo "===============学员管理系统============"
echo "==========欢迎来到学员管理系统========="
;;
5)
echo "感谢您使用学员管理系统,请给五星好评哦"
exit
;;
esac
done
总结
这个脚本还可以在完善,让他更加符合我们的使用习惯,此脚本学员的第一版脚本和第二版脚本的结合,如果使用函数会更完美一些。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/191220.html原文链接:https://javaforall.cn
相关文章
- JMH微基准测试入门案例
- 逻辑卷实战案例-逻辑卷扩容
- JS中对象转数组案例解析
- php案例:加密函数
- 案例分享:如何产生真正的随机函数?
- c语言图书管理系统案例实训_c语言实现图书馆系统
- 数据导入与预处理-第6章-04pandas综合案例
- SpringMVC 入门案例
- 【愚公系列】2023年01月 .NET CORE工具案例-DeveloperSharp的使用(数据库)
- 2022爱分析·中国数据智能最佳实践案例评选结果揭晓,36个项目入选
- 2021年,身份欺诈案例创下新记录
- MySQL 数据库优化案例 – DELETE 表慢详细优化过程及思路
- Redis应用于php,连接mysql的完整案例详解大数据
- 大数据技术之WordCount案例详解大数据
- 提升用户体验:利用Redis缓存技术实现数据优化(redis缓存使用案例)
- MySQL数据库开发实践:实战案例分析.(mysql数据库案例)
- Oracle RAC全解析:深度剖析Oracle RAC技术,实战案例详解,助您轻松掌握!(oraclerac书籍)