今日小练题目📢
创建10个用户,并给他们设置随机密码,密码记录到一个文件里,文件名userinfo.txt 用户从user_00 到 user_09 密码要求:包含大小写字母以及数字,密码长度15位
优秀作业🤌🏻
#!/bin/bash
#author:xYLiuuuuuu
#version:v1
#date:2024-11-14
if [ -f /tmp/userinfo.txt]
then
rm -f /tmp/userinfo.txt
fi
if ! which mkpasswd
then
sudo apt install -y expect
fi
for i in `seq -w 0 09`
do
p=`mkpasswd -l 15 -s 0`
useradd user_${i} && echo "${p}" | passwd --stdin user_${i}
echo "user_${i} ${p}" >> /tmp/userinfo.txt
done
敲黑板📝
- mkpasswd命令,可用于生成随机密码
>> mkpasswd -l 12 -c 3 -C 4 -s 0
-l 数字个数
-c 小写字符个数
-C 大写字符个数
-s 特殊字符个数
>> mkpasswd -C 5 -l 10 | passwd --stdin lxy
生成出一个长度为20字符、含5位大写字母的新密码,并自动为指定用户进行新密码设定。
- seq命令,常用于生成数字序列
seq last
seq first last
seq first increment last
seq -s . 3 7
-s 指定分隔符
seq -f 192.168.5.%g 1 233
-f 指定输出格式
# 执行数学运算
expr `(seq -s " + " 1 100)`
# 快速创建多个文件
touch $(seq -f "file%g.txt" 1 10)