介绍
在这个挑战中,我们将实现一个名为 genpass.sh 的 bash 脚本,用于生成随机密码。生成的密码应为 12 个字符长,并满足特定要求:必须包含至少一个数字、一个大写字母、一个小写字母和一个特殊字符。目标是创建一个满足这些条件的密码生成器,并在每次执行时返回不同的密码。我们将探讨诸如 Linux 随机数生成器和 bash 脚本编程基础等主题。
密码生成器
在 LabEx 环境中,每个用户的用户名是 labex,但密码是随机的。
请实现一个随机密码生成器,满足以下要求:
- 生成的密码应为 12 个字符长。
- 密码必须包含至少一个数字、一个大写字母、一个小写字母和一个特殊字符。
- 仅允许使用以下特殊字符:
><+-{}:.&;。
目标
- 将所需的 zsh 脚本写入
/home/labex/project目录下已创建的genpass.sh文件中。 genpass.sh脚本需要满足介绍中描述的三个条件,并且每次执行都应生成一个不同的密码。- 不要使用现成的密码生成工具,例如 Linux 上的 mkpasswd。
- 密码生成脚本应每次执行时返回一个符合要求的密码。
输出
$ cd /home/labex/project
$ sh genpass.sh
2Dsxw9+xS:27
总结
恭喜!你已经完成了密码生成器挑战。你可以在 LabEx 中练习更多实验来提升你的技能。



