shell脚本批量操作用户

时间:2022-01-29 21:36:32

批量操作用户脚本

用到的命令

seq

seq命令用于产生从某个数到另外一个数之间的所有整数。

seq -w 10 15
输出结果:10 11 12 13 14 15

cut

cut命令用来显示行中的指定部分,删除文件中指定字段。cut经常用来显示文件的内容,类似于下的type命令。

echo 'hello' | cut -c 1-3
输出结果: hel

openssl

OpenSSL是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。

这是一个超级强大的命令,内含几乎所有的加密算法库。

命令使用方法参见:![http://blog.csdn.net/as3luyuan123/article/details/16811693]

openssl rand –base64 8
8是随机数的长度,不是生成的字符串长度
shell脚本批量操作用户

useradd

useradd root
添加root用户

chpasswd

可以man手册查看用法,格式为chpasswd username:passwd

批量添加用户的脚本

#!/bin/bash

for name in `seq -w 10 15`
do
pass=`openssl rand -base64 8 | cut -c 1-9`
useradd user$name && echo "user$name:$pass" | chpasswd
echo User:user$name pass:$pass >> /home/ubuntu/user.log
done

批量删除用户脚本

#!/bin/bash

for name in `seq -w 10 15`
do
pass=`openssl rand -base64 8 | cut -c 1-9`
useradd user$name && echo "user$name:$pass" | chpasswd
echo User:user$name pass:$pass >> /home/ubuntu/user.log
done