创建用户
# 创建用户函数
# @param 1 用户名
# @param 2 用户组
# @param 3 用户密码
prepare_user() {
group=`cat /etc/group | cut -f1 -d':' | grep -w "$2" -c`
if [ $group -eq 0 ]; then
groupadd $2
fi
user=`cat /etc/passwd | cut -f1 -d':' | grep -w "$1" -c`
if [ $user -eq 0 ]; then
useradd -g $2 $1
if [ -n "$3" ] ;then
echo $3 | passwd --stdin $1
fi
fi
}
# 调用方法
# 创建一个username的用户并添加到root用户组中,密码设为123456
prepare_user "username" "root" "123456"
说明:如果不判断用户组的话,使用useradd username
命令创建用户时,会同时创建一个名为username
的用户组,当使用userdel username
命令删除用户时,只删除username
用户,而不删除 username
用户组,导致再次使用useradd username
创建用户时,因存在username
用户组而导致创建用户失败。
删除用户
# 删除用户函数
# 删除用户及用户home目录
# @param 1 用户名
remove_user(){
i=`cat /etc/passwd | cut -f1 -d':' | grep -w "$1" -c`
if [ $i -eq 1 ]; then
userdel -r $1
fi
}
#调用方法
remove_user "username"
说明:userdel -r username
命令中的-r
参数为递归删除用户home
目录