在日常工作中,系统需要创建多个不同用户,如果手动进行创建,数量少还好,数量上一旦变多则成了一件较为繁琐且降低效率的事情,这时我们可以用Shell进行批量创建,进一步来提升工作效率(不能摸鱼了~)
#!/usr/bin/bash
read -p "请输入用户前缀|密码|数量: " rep pass num
if [[ ! $num =~ ^[0-9]+$ ]];then
echo "Error 请输入数字!"
fi
cat <<-EOF
你输入的用户名前缀是: $rep
你输入的统一密码是: $pass
你要创建的数量: $num
EOF
read -p "你确定要创建吗?[y|n]" aredy
case $aredy in
y|Y|yes|YES)
for i in $(seq $num)
do
username=$rep$i
id $username &>/dev/null
if [ $? -eq 1 ];then //判断id 用户是否存在,如果不存在(echo $?=1)则创建
useradd $username && \
echo "$pass" | passwd --stdin $username &>/dev/null
echo "$username is OK!"
fi
done
;;
n|N|No|NO)
exit 1
;;
*)
read -p "你确定要创建吗?[y|n]" aredy
esac
当然了,这里只是举一个小小的例子,对于批量创建用户的方法还有很多,欢迎大家在评论区进行分享讨论哈~