Shell 脚本学习 day02

该篇文章描述了一个Bash脚本,用于创建10个用户,每个用户分配一个包含大小写字母和数字的15位随机密码,并将信息保存在userinfo.txt文件中。脚本首先检查userinfo.txt文件是否存在并删除,然后安装必要的工具(如expect)以确保mkpasswd命令可用。
摘要由CSDN通过智能技术生成

release node

   # 先去判断这个文件是否存在 如果存在的话就删除他
   # 判断mkpasswd 这条命令是否存在
   # 通过seq生成从00~09 10个数的队列
   # 每次都会随机生产出随机字符串,将字符串赋值给p变量,这就是用户密码
   # mkpasswd每次生成字符串会包含大小写特殊字符和数字,
   # 如果不需要特殊符号 可以使用 -s 0来限制生成特殊符号
   		# 添加用户 并赋予密码
   		# 输出打印到文件里

#!/bin/bash
# context 创建10个用户,并给他们设置随机密码,密码记录到一个文件里,文件名userinfo.txt 用户从user 00到 user 09 密码要求:包含大小写字母以及数字,密码长度15位
# author  Tianhao
# version v1.0
# data    10/292023
# 版权所有,翻版必究

# 先去判断这个文件是否存在 如果存在的话就删除他
if [ -f /tianhaodata/userinfo.txt ]
then
    rm -f userinfo.txt
fi
# 判断mkpasswd 这条命令是否存在
if ! which mkpasswd 
then
    yum -y install expect
fi
# 通过seq生成从00~09 10个数的队列
for i in $(seq -w 0 09)
do
    # 每次都会随机生产出随机字符串,将字符串赋值给p变量,这就是用户密码
    # mkpasswd每次生成字符串会包含大小写特殊字符和数字,如果不需要特殊符号 可以使用 -s 0来限制生成特殊符号
    p=$(mkpasswd -l 15 -s 0)
    # 添加用户 并赋予密码
    useradd user_${i} && echo "${p}" | passwd --stdin user_${i}
    # 输出打印到文件里
    echo "user_${i} ${p}" >> /tianhaodata/userinfo.txt
done

   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值