一、批量添加有规律的用户
如添加user1、user2……user50,具体多少个可以使用交互方式输入,用户前缀也使用交互方式输入:
#!/bin/bash
##批量添加用户脚本##
##交互方式读取用户前缀和用户数##
##密码也采用交互输入,用户密码为密码前缀+用户序号
##作者:Barlow##
##最后修改时间:2013-3-18##
#
#建立用户
echo "Please input username:"
read name
echo "Please input number of users:"
read num
n=1
while [ $n -le $num ]
do
/usr/sbin/useradd $name$n > /dev/null
##这里也可以将新建用户加入某个组,如sshd组以让其可以使用ssh登录
/usr/sbin/usermod -G sshd $name$n
n=`expr $n + 1`
done
# 修改密码
echo "Please input the password:"
read passwd
m=1
while [ $m -le $num ]
do
echo $passwd$m | /usr/bin/passwd --stdin $name$m > /dev/null
m=`expr $m + 1`
done
exit
二、批量添加没有任何规律的用户:
如果对于完全没有规律可言的用户,如要为研发部门集中在某台服务器上添加账号,账号为每个用户的全拼,则可以将这些用户的账号放入一个具体的文件中,用less读取并建立,具体脚本如下:
#!/bin/bash
##批量添加用户脚本##
##从用户列表文件$1中读取用户名并建立##
##设定所有用户的密码为用户名+888##
##作者:Barlow##
##最后修改时间:2013-3-18##
#
for user in `less $1`
do
/usr/sbin/useradd $user
##这里也可以将新建用户加入某个组,如sshd组以让其可以使用ssh登录
/usr/sbin/usermod -G sshd $name$n
#修改密码
echo $user"888" | /usr/bin/passwd --stdin $user
done
exit
执行时,后面跟的参数为用户列表文件,如:
sh useradd.sh user_list.txt