shell脚本之用户管理
Posted gxiaobai
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本之用户管理相关的知识,希望对你有一定的参考价值。
#!/usr/bin/env bash ############################### # 脚本名称 : userManager.sh # # 脚本功能 : 账号管理 # # 脚本参数 : 无 # # 创建时间 : 2019-07-25 # # 作 者 : Mr.Guo # # 版 本 : v1.0 # ############################### # 提示信息 []<-() note_message() cat <<EOF --------用户管理程序----------- 1.创建用户 2.删除用户 3.锁定用户 4.解锁用户 5.退出脚本 EOF # 创建账户 []<-(user:string,passwd:string) create_user() user="$1" pwd="$2" useradd "$user" # 添加账户 echo "$pwd" | passwd --stdin "$user" # 设置密码 if [[ "$?" == 0 ]]; then echo "用户已经创建成功" exit fi # 删除账户 []<-(user:string) delete_user() user="$1" userdel "$user" # 删除用户 if [[ "$?" == 0 ]]; then echo "已经删除$user用户" fi # 锁定账户 []<-(user:string) lock_user() user="$1" STAT=$(passwd -S "$user" | awk ‘print $2‘) if [[ "$STAT" == "PS" ]]; then passwd -l "$user" fi if [[ "$STAT" == "LK" ]]; then echo "用户 $user 已经锁定" exit fi # 解锁账户 []<-(user:string) unlock_user() user="$1" STAT=$(passwd -S "$user" | awk ‘print $2‘) if [[ "$STAT" == "LK" ]]; then passwd -u "$user" fi if [[ "$STAT" == "PS" ]]; then echo "已解锁账户 $user" exit fi # 退出脚本 []<-() exit_script() read -p "是否退出脚本(yes)" tu if [[ "$tu" == "yes" ]]; then exit fi # 主函数 []<-() main() note_message # 提示信息 read -p "请输入操作选择(1-5):" sn case "$sn" in 1) read -p "请输入需要创建的用户名:" uname read -p "请给该账户设置一个密码:" passwd create_user "$uname" "$passwd" ;; 2) read -p "请输入需要删除的用户名:" uname delete_user "$uname" ;; 3) read -p "请输入需要锁定的用户名:" uname lock_user "$uname" ;; 4) read -p "请输入需要解锁的用户名:" uname unlock_user "$uname" ;; 5) printf "退出脚本\n" exit_script ;; esac # 函数运行 main
以上是关于shell脚本之用户管理的主要内容,如果未能解决你的问题,请参考以下文章
shell脚本检测当前用户是否为超级管理员===checkRoot.sh