#!/bin/bash
#func:add or del user
#author:reed
. /etc/profile
UserCtr=$1
TeacherName=$2
StudentName=$3
StudentNumber=$4
Usage(){
cat<<EOF
--Usage:
$0 [add/del] [Teacher'sName] [Student'sName] [The number of Students] $0 shell或shell脚本的名字
ex.
$0 add teacher stu 3
--
add:useradd username
del:userdel username
[Teacher'sName]:teacher's name
[Student'sName]:student's name,just only the beginning of a lowercase letter
[The number of Students],only [1-10]
EOF
}
if [ $# -eq 4 ];then # $#:参数的个数
if [ $1 == "add" ];then
#echo "add"
if [[ "$2" =~ ^[a-z]+$ && "$3" =~ ^[a-z]+$ && "$4" -ge 1 && "$4" -le 10 ]];then
#create user $2
id $2 >>/dev/null 2>&1
if [ $? -ne 0 ];then # 如果上一句命令执行失败。$? 表示上一条命令返回值,如果上一条命令成功执行,返回0,否则返回1.
useradd $2
TeacherPasswd=$(date|md5sum|cut -c 1-6)
echo $TeacherPasswd|passwd --stdin $2 >>/dev/null 2>&1
echo "User [$2] create successfully."
echo "$2:$TeacherPasswd"
else
echo "The user [$2] is exist."
fi
for ((num=1;num<=$4;num++));do
id ${3}${num} >>/dev/null 2>&1
if [ $? -ne 0 ];then
useradd ${3}${num}
StudentPasswd=$(echo $RANDOM|md5sum|cut -c 1-6)
echo $StudentPasswd|passwd --stdin ${3}${num} >>/dev/null 2>&1
echo "User [${3}${num}] create successfully."
echo "${3}${num}:$StudentPasswd"
else
echo "The user [${3}${num}] is exist."
fi
done
else
echo "Parameter error!"
exit 10000
fi
elif [ $1 == "del" ];then
userdel $2
if [ $? -ne 0 ];then
echo "User [$2] is error"
else
echo "delete user [$2] success"
fi
for ((num=1;num<=$4;num++));do
userdel ${3}${num}
if [ $? -ne 0 ];then
echo "User [${3}${num}] name is error"
else
echo "delete user [${3}${num}] success"
fi
done
#echo "Please delete user manually."
else
echo "Parameter error!Please input [add] or [del]."
exit 10086
fi
else
Usage
fi
相关推荐
TF-IDF+逻辑回归文本分类:轻量、可解释、可交付的落地实践
文本分类是自然语言处理中最基础且高频的应用场景,其核心在于将非结构化文本转化为机器可计算的特征表示,并建立判别模型。TF-IDF作为经典特征提取方法,本质是将业务语义规则编码为统计权重;逻辑回归则以线性可解释性、低资源消耗和稳定泛化能力,成为中小规模文本分类任务的工程优选。这种组合不追求SOTA指标,而聚焦于模型可调试、可追溯、可嵌入业务系统的技术价值,在客服工单分拣、政务热线归类、合同初筛等真实场景中实现快速部署与持续迭代。尤其适合数据量有限、业务方需参与调优、终端资源受限的一线落地需求。
shell脚本之基础入门
Shell 教程 Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。 Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。 第一个shell脚本 第一步:创建脚本文件 使用touch命令新建一个文件 demo.sh,扩展名为 sh(sh代表shell),扩展名可以清楚知道是脚本文件,没有也无影响。 第二步:编写脚本文件内容 输入一些代码,第一行一般是这样: #!/.
Ubuntu零基础入门到精通【4.6讲】:Ubuntu 截图、录屏与剪贴板工具 - 从入门到工程实践
🏆 本文收录于 《滚雪球学 Ubuntu》 专栏。 本专栏面向有一定计算机基础,但尚未系统学习 Linux / Ubuntu 的读者,采用“滚雪球式学习法”:先装好、再会用、再理解、再优化、再实战,带你从第一次进入 Ubuntu 桌面 / 终端开始,逐步掌握 Ubuntu 的日常使用、命令操作、软件安装、系统配置、开发环境搭建与服务器部署能力。
bash:demo.sh权限不够
在liunx系统中执行shell脚本时,提示权限不够,如下: bash:demo.sh 权限不够 解决方法: chmod 777 ./demo.sh
Ubuntu零基础入门到精通【1.8讲】:学习 Ubuntu 的正确路线图:从零基础到工程实践的系统性成长路径!
🏆 本文收录于 《滚雪球学 Ubuntu》 专栏。 本专栏面向有一定计算机基础,但尚未系统学习 Linux / Ubuntu 的读者,采用“滚雪球式学习法”:先装好、再会用、再理解、再优化、再实战,带你从第一次进入 Ubuntu 桌面 / 终端开始,逐步掌握 Ubuntu 的日常使用、命令操作、软件安装、系统配置、开发环境搭建与服务器部署能力。
Ubuntu零基础入门到精通【2.3讲】:️选择 Ubuntu 版本——Desktop、Server、LTS、Minimal Install 全面解析!
🏆 本文收录于 《滚雪球学 Ubuntu》 专栏。 本专栏面向有一定计算机基础,但尚未系统学习 Linux / Ubuntu 的读者,采用“滚雪球式学习法”:先装好、再会用、再理解、再优化、再实战,带你从第一次进入 Ubuntu 桌面 / 终端开始,逐步掌握 Ubuntu 的日常使用、命令操作、软件安装、系统配置、开发环境搭建与服务器部署能力。
脚本启动jar包
这里主要为shell脚本启动部署在服务器中jar包#!/bin/bash #这里可替换为你自己的执行程序,其他代码无需更改 APP_NAME=demo.jar #使用说明,用来提示输入参数 usage() { echo "Usage: sh demo.sh [start|stop|restart|status]" exit 1 } #检查程序是否在运行 is_exist() {...
SpringBoot电商Demo:带H2数据库和Docker一键部署的mall商城源码
这个SpringBoot电商项目开箱即用,内置H2嵌入式数据库文件(mall.mv.db)和MySQL初始化脚本(mall.sql),支持两种运行方式:直接本地启动或通过Docker容器化部署(含Dockerfile和boot.sh启动脚本)。功能覆盖商品浏览、分类管理、购物车操作、订单生成等核心电商流程,前后端交互完整。项目基于Maven构建,pom.xml结构清晰;src/main/resources下已配置application.yml,无需额外修改即可运行。附带多张示例商品图片(JPG/PNG格式)
shell脚本启动jar包示例
这里主要为shell脚本启动部署在服务器中jar包 #!/bin/bash #这里可替换为你自己的执行程序,其他代码无需更改 APP_NAME=demo.jar #使用说明,用来提示输入参数 usage() { echo "Usage: sh demo.sh [start|stop|restart|status]" exit 1 } #检查程序是否在运行 is_exist() { pid=`ps -ef | grep $APP_NAME | grep -v grep | a...
高校毕设可用的SpringBoot在线考试系统源码(含MySQL脚本与一键部署指南)
直接拿来就能跑的Java在线考试系统,专为计算机专业毕业设计准备。用SpringBoot搭建,前后端代码齐全,数据库用MySQL,附带auth.sql和exam.sql两个建库脚本,开箱即用。部署文档.docx写得特别细,从环境配置、依赖安装到启动命令全都有,本地调试三步就能搞定。系统拆成auth-service(登录注册权限)、exam相关模块(出题、组卷、考试、阅卷)、monitor-service(服务状态监控)和config-server(统一配置管理),结构清晰,方便答辩时讲清楚模块分工。资源包里
Java校园二手平台实战:Spring Boot单体架构落地指南
校园二手交易平台是典型垂直领域Web应用,其核心在于将高校特有的身份认证、地域限制、低信任环境等业务约束转化为可落地的技术方案。基于Spring Boot的单体架构设计,兼顾开发效率与运维简易性;MySQL冗余建模与Thymeleaf服务端渲染,则直面校园IT基础设施薄弱、前端人力匮乏的现实。关键技术价值体现在学号主键绑定、LDAP实时校验、一卡通支付对接、Redis库存锁防超卖等场景化实现上。本文聚焦真实高校部署案例,覆盖JDK 17适配、UTF8MB4字符集配置、Nginx反向代理、审核状态事务控制等高
Hunyuan-MT-7B-WEBUI让非程序员也能玩转AI翻译
本文介绍了如何在星图GPU平台上自动化部署Hunyuan-MT-7B-WEBUI镜像,快速构建零门槛AI翻译服务。用户无需编程基础,即可通过Web界面实现藏语、维吾尔语等38种语言与中文的实时互译,典型应用于基层政务双语文件处理、高校语言教学演示及跨境电商多语种用户反馈分析。
Spring Boot构建课程教学平台:从认证授权到文件上传的完整后端实践
在Java企业级应用开发中,Spring Boot框架因其快速构建和简化配置的特性,已成为构建Web应用后端服务的首选技术栈。其核心原理在于通过自动配置和起步依赖,将Spring MVC、Spring Data JPA、Spring Security等组件无缝集成,极大地提升了开发效率。这一技术组合的价值在于能够快速搭建出结构清晰、易于维护的RESTful API服务,广泛应用于各类管理系统、电商平台及在线教育系统等场景。本文以课程辅助教学平台为例,深入剖析如何运用Spring Boot技术栈实现用户认证授
5分钟用Streamlit部署数据科学应用:从Dice Roller到生产级仪表盘
Streamlit是一种面向数据科学工作流的轻量级Python Web框架,其核心原理是将Python脚本自动转化为交互式Web应用,无需前端开发、服务器配置或Docker封装。它通过声明式API和内置状态管理(如st.session_state)降低部署门槛,技术价值在于打通模型开发与业务交付之间的最后一公里,显著提升分析结果的可触达性、可反馈性和可传播性。典型应用场景包括模型效果快速演示、A/B测试结果可视化、特征重要性交互分析等数据科学高频任务。本文以Dice Roller为起点,深入解析Stream
SSM+MySQL学校访客系统:教学级Java Web工程实践指南
Java Web开发是计算机专业核心能力,而SSM(Spring+SpringMVC+MyBatis)框架与MySQL数据库构成企业级轻量应用的经典技术组合。其原理在于分层解耦——Spring管理对象生命周期与事务,SpringMVC处理请求路由与视图响应,MyBatis实现面向POJO的SQL映射;MySQL则提供ACID保障、索引优化与多条件查询支持。该组合具备极高的教学适配性:配置显式、错误直观、资料丰富,能有效承载从需求分析、数据库设计、三层编码到部署调试的完整工程链路。典型应用场景包括校园访客登记
教育机构小程序毕业设计:轻量化闭环与可维护源码实践
微信小程序作为轻量级应用载体,正成为教育行业数字化转型的基础技术路径。其核心价值在于以低代码门槛实现业务流程闭环,尤其适配中小型教培机构‘Excel+微信群’向线上化迁移的真实需求。本文围绕教育服务最小可行闭环展开,解析如何通过结构清晰的MySQL数据库设计、按业务域组织的可解释性源码、以及Canvas排课等硬核实现,将试听预约、课时管理、教师排班等高频场景转化为稳定可用的工程方案。内容深度融合微信小程序开发规范与教育业务逻辑,兼顾毕业设计评分要点与真实运维要求,为计算机专业学生提供兼具技术深度与落地价值的
基于Spark的猫眼电影数据分析与推荐系统毕业设计全流程解析
在大数据技术体系中,Spark和Hadoop是处理海量数据的核心基础设施,前者提供高效的内存计算能力,后者负责分布式存储与资源调度。理解它们的工作原理,是构建数据流水线的关键。而推荐系统则通过协同过滤等算法,从用户行为数据中挖掘个性化偏好,是大数据应用的重要价值体现。这类技术组合常用于电商、视频、资讯等平台的智能分发场景,也广泛出现在高校的大数据课程设计与毕业设计中。本文以一套典型的Python大数据项目为例,围绕猫眼电影数据,完整串联了爬虫采集、HDFS存储、Spark离线分析、协同过滤推荐以及Djang
repeater无刷新批量删除Demo源码
repeater无刷新批量删除Demo源码 本人做的一个小示例 有说明。利用jquery局部刷新.
536



被折叠的 条评论
为什么被折叠?



