一、编写脚本
1.1方法一
要求:用户名 zf01 ~ zf10 ;密码随机15位
[root@zf-01 19:43 ~/jiaoben]# cat user.sh
#!/bin/bash
for i in {06..15}
do
useradd zf$i
#新建用户
u_pwd=$(echo zf$i|md5sum|cut -c 1-10 )
#得到10个字符串的密码
echo $u_pwd |passwd zf$i --stdin
#给用户设置密码
echo zf$i: $u_pwd >>user_passwd.txt
#保存用户名和密码
done
md5sum命令用于生成和校验文件的md5值。它会逐位对文件的内容进行校验。是文件的内容,与文件名无关,也就是文件内容相同,其md5值相同。 字符 | md5sum 标识生成md5值。
md5sum用法参考链接:Linux 数据校验md5sum_岳来的博客-优快云博客_linux md5校验命令
cut -c 1-10 表示按照字符抽取1-10位
1.2方法二
[root@zf-01 19:43 ~/jiaoben]# cat user.sh
#!/bin/bash
for i in {06..15}
do
useradd zf$i
#新建用户
u_pwd=$(mkpasswd -l 20 -s 0)
#得到10个字符串的密码
echo $u_pwd |passwd zf$i --stdin
#给用户设置密码
echo zf$i: $u_pwd >>user_passwd.txt
#保存用户名和密码
done
mkpasswd -l 20 -s 0 -l标志定义了密码中必须包含的最小位数。 -s 标志定义密码中必须包含的最小特殊字符数。
1.3方法三
将命令拼接
echo zf{01..10}|xargs -n1 |sed 's#.*#useradd &;pass=`mkpasswd -l 10 -s 0`;echo $pass |passwd --stdin &;echo & $pass >>~/p.txt#g'