shell学习2——创建10个用户,并给他们设置随机密码,密码记录到一个文件里,文件名为userinfo.txt,用户从user_00 到 user_09

跟B站Up主学习shell脚本——阿铭linux
3461576172505894

需求

创建10个用户,并给他们设置随机密码,密码记录到一个文件里,文件名为userinfo.txt,用户从user_00 到 user_09
密码要求:包含大小写字母以及数字,密码长度15位

#!/bin/bash
#author: xxh
#version: v1
#date: 2023-12-07


##先查询/test/userinfo.txt文件是否存在,存在的话先删除,以免影响本次脚本执行结果
if [-f /test/userinfo.txt]
then
    rm -f /test/userinfo.txt
fi

##判断mkpasswd命令在不在,使用该命令来生成随机字符串,也就是用户密码
if ! which mkpasswd
then
    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}" >>  /test/userinfo.txt
done

收获

注意:mkpasswd命令在centos7里面是可以使用的

如果是ubantu22,需要用下面的命令

apt install openssl
openssl rand -base64 15

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-23 03:12:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-23 03:12:01       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-23 03:12:01       82 阅读
  4. Python语言-面向对象

    2023-12-23 03:12:01       91 阅读

热门阅读

  1. 使用卷积进行数据平滑处理

    2023-12-23 03:12:01       55 阅读
  2. ubuntu20.04.3

    2023-12-23 03:12:01       65 阅读
  3. ES 索引关闭source后是否可以更新?

    2023-12-23 03:12:01       55 阅读
  4. 【大数据面试】Kafka面试题与答案

    2023-12-23 03:12:01       56 阅读
  5. GO设计模式——19、中介者模式(行为型)

    2023-12-23 03:12:01       74 阅读
  6. Centos 7.6 gcc (GCC) 7.3.1 20180303 (Red Hat 7.3.1-5)

    2023-12-23 03:12:01       55 阅读
  7. TypeScript 常见配置项

    2023-12-23 03:12:01       70 阅读
  8. python异常之try/else分句

    2023-12-23 03:12:01       57 阅读
  9. EASYEXCEL导出表格(有标题、单元格合并)

    2023-12-23 03:12:01       53 阅读
  10. 信息学奥赛一本通 2068:【例2.6】鸡兔同笼

    2023-12-23 03:12:01       70 阅读