背景:生产中当系统管理人员比较多,存在批量创建用户的情况
脚本比较简单:
代码如下:
#!/bin/bash
echo “———we will batch creating user——-”
read -p \”pls enter your prefix and number: \” prefix num
if [ -z “prefix\”−o−z\”prefix\” -o -z \”prefix\”−o−z\”num” ];then
echo “Usage:$0 prefix number ,like tom 5 ,then we will create 5 persion”
exit 1
fi
expr $num + 1 &>/dev/null
if [ $? -ne 0 ];then
echo “second args must be int”
exit 1
fi
if [ $UID -ne 0 ];then
echo “only root can run thsi scripts”
exit 2
fi
for i in
seq $num
do
pass=
echo $RANDOM|md5sum |cut -c 1-8
useradd prefixprefixprefixi
echo “$pass” |passwd –stdin prefixprefixprefixi >/dev/null
echo “user:prefixprefixprefixi passwort:$pass” >>/tmp/user_pass.txt
done
脚本分析:
1、不用交互式为用户创建密码
echo “123456” |passwd –stdin username >/dev/null
2、随机字符串的截取
通过变量RANDOME 并使用md5进行加密,通过cut截取字符长度即可
3、这里没有对用户村在进行判断,读者可以自行尝试