编写
create_user.sh
,实现以下功能:
1、选择建立还是删除用户
2、建立用户时,输入用户名:
(1)当该用户存在时,提示用户存在;
(2)当该用户不存在时,提示输入该用户的密码,根据用户和密码建立用户,显示建立成功;
3、删除用户时,输入用户名:
(1)当该用户存在时,删除用户,显示删除成功;
(2)当该用户不存在时,提示用户不存在;
4、当输入exit
时,退出脚本
此脚本分为四部分来书写:
1、验证执行脚本的用户是否为root
用户
2、编写建立用户函数(此处将给密码部分单独书写)
3、编写删除用户部分
4、编写主函数部分
vim create_user.sh
#!/bin/bash
[ ! $USER == "root" ] && {
echo "Error: please use user root !!!"
exit
}
PASSWD(){
read -p "please input passwd : " -s ONE
echo ""
read -p "please reput passwd : " -s TWO
echo ""
[ $ONE == $TWO ] && {
useradd $USERNAME
echo $ONE | passwd --stdin $USERNAME &> /dev/null && {
echo "$USERNAME is created."
}
} || {
echo "Error: passwd is different !!!"
ADD
}
}
ADD(){
read -p "please input username : " USERNAME
[ "$USERNAME" == "exit" ] && {
exit
}
id $USERNAME &> /dev/null && {
echo $USERNAME is exist!
ADD
} || {
PASSWD
}
MAIN
}
DEL(){
read -p "please input username : " USERNAME
[ "$USERNAME" == "exit" ] && {
exit
}
id $USERNAME &> /dev/null && {
userdel -r $USERNAME &> /dev/null && {
echo "$USERNAME" is deleted.
}
} || {
echo $USERNAME is not exist!
DEL
}
MAIN
}
MAIN(){
read -p "Please choose add or del : " STATE
[ "$STATE" == "add" ] && {
ADD
}
[ "$STATE" == "del" ] && {
DEL
}
[ "$STATE" == "exit" ] && {
echo bye !!!
exit
} || {
echo "Error: please input correctly !!!"
MAIN
}
}
MAIN ##使用主函数
测试脚本功能
1、执行脚本用户不是root
用户
2、建立用户已存在,建立用户时两次密码输出不一致
3、建立用户时两次密码输入一致,建立用户成功
4、删除不存在用户,删除存在用户