Shell脚本生成密码

利用 /dev/urando 生成密码

密码以字母、数字、开头
特殊符号多
for _ in {1..30};do tr -dc '~`!@#$%^&*()_+-={}:"<>?[];,./A-Za-z0-9"'"'" head -c 25;echo ;done |grep ^[a-zA-Z0-9]
echo
特殊符号少
for _ in {1..30};do tr -dc '(!@&%^-_=+[{}]:,./?~#*)A-Za-z0-9' head -c 25;echo ;done |grep -P "^[a-zA-Z0-9](?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[\!@&%\^\-_=\+\[{}\]:,\./\?~#\*]).{20,30}$"

Shell脚本生成密码
^                      # &#x5F00;&#x5934;
(?=.*[0-9])            # &#x6570;&#x5B57;
(?=.*[a-z])            # &#x5C0F;&#x5199;
(?=.*[A-Z])            # &#x5927;&#x5199;
[0-9a-zA-Z!@&%^-_=+:,./?~#*]{6,30}   #&#x53EA;&#x80FD;&#x8FD9;&#x4E9B;&#xFF0C;&#x4E14;6&#x5230;30&#x4E2A;
$                      # &#x7ED3;&#x5C3E;

完整写法

^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z!@&%^-_=+:,./?~#*]{6,30}$

Original: https://www.cnblogs.com/outsrkem/p/14598641.html
Author: Outsrkem
Title: Shell脚本生成密码

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/578471/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 【演讲】2020年马云谈疫情过后的新风口

    2020年马云谈疫情过后的新风口 【关键词】:疫情、新风口、数字化趋势、传统行业转型、教育 一、演讲背景 背景 2020线上智博会,马云8分钟演讲30次提到数字化 原视频 2020…

    Linux 2023年6月13日
    0102
  • Pytorch Tensor 维度的扩充和压缩

    维度扩展 x.unsqueeze(n) 在 n 号位置添加 一个维度 例子: import torch x = torch.rand(3,2) x1 = x.unsqueeze(0…

    Linux 2023年6月7日
    081
  • 了解GFS

    参考: https://wenku.baidu.com/view/4392293517791711cc7931b765ce0508763275f2.html 论文翻译 https:…

    Linux 2023年6月7日
    095
  • 如何写出健壮可靠的shell脚本

    1 脚本失败时即退出 ; set -e 例子: 可以在脚本的开头设置如下set -e 2 打印脚本执行过程 sh -x test.sh #整个过程执行了哪些命令或者在开头加上set…

    Linux 2023年5月28日
    078
  • Mysql 5.7开启binlog日志

    Mysql 5.7开启binlog日志 前言 binlog是MySQL的二进制日志,并且是MySQL中最重要的日志。binlog记录了对MySQL数据库执行更改的所有操作,包括对数…

    Linux 2023年6月6日
    090
  • Django中信号的使用

    信号种类及用法 Django中提供了”信号调度”,用于在框架执行操作时解耦. 一些动作发生的时候,系统会根据信号定义的函数执行相应的操作 Django中内置…

    Linux 2023年6月14日
    085
  • Redis快速度特性及为什么支持多线程及应用场景

    转载请注明出处: 1.Redis 访问速度快特性 正常情况下,Redis执行命令的速度非常快,官方给出的数字是读写性能可以达到10万/秒,当然这也取决于机器的性能;Redis使用了…

    Linux 2023年5月28日
    080
  • 工作三年的一些感悟

    前言 很久没有上博客,我是看着其中一篇文章进来,然后正好我也加起来三年,那就提笔写一下感触,出来三年基本上和有些同学断了联系,唯有室友还偶尔还会聊上几句,三年做过游戏测试、社交AP…

    Linux 2023年6月8日
    096
  • 统计每个月兔子的总数—牛客网

    统计每个月兔子的总数_牛客题霸_牛客网 (nowcoder.com) #include using namespace std; int main() { //1 1 2 3 5 …

    Linux 2023年6月13日
    087
  • 【转】高并发下秒杀商品,你必须知道的9个细节

    0.前言 高并发下如何设计秒杀系统?这是一个高频面试题。这个问题看似简单,但是里面的水很深,它考查的是高并发场景下,从前端到后端多方面的知识。 秒杀一般出现在商城的促销活动中,指定…

    Linux 2023年6月13日
    079
  • MSSQL·FOR XML PATH语法转义尖括号解决方案

    阅文时长 | 0.14分钟字数统计 | 225.6字符主要内容 | 1、引言&背景 2、示例及解决方案 3、声明与参考资料『MSSQL·FOR XML PATH语法转义尖括…

    Linux 2023年6月14日
    076
  • java执行shell脚本怎么进行交互处理

    感谢我吧,什么都不说,直接上代码: package utils; import java.io.*; public class ShellUtils { public static…

    Linux 2023年5月28日
    082
  • WPF获取系统dpi

    WPF获取系统dpi var dpiX = (int)typeof(SystemParameters).GetProperty("DpiX", BindingF…

    Linux 2023年6月13日
    080
  • Linux常用命令

    基本操作 创建目录: mkdir xxx 删除目录: rm -rf xxx 切换目录: cd xxx,返回: cd – 创建文件: touch xxx.txt 复制文件: cp x…

    Linux 2023年6月8日
    0108
  • 多用户共享文件

    假设有三个用户:Tom Jerry Bob.其中,tom和Jerry都属于market部,Bob属于tech部,请在/usr目录下创建两个用户共享的目录market和public,…

    Linux 2023年6月13日
    080
  • 【Python】**kwargs和takes 1 positional argument but 2 were given

    Python的函数定义中可以在参数里添加kwargs——简单来说目的是允许 添加不定参数名称的参数,并作为 字典传递参数。但前提是——你必须提供 参数名**。 例如下述情况: 1 …

    Linux 2023年6月13日
    098
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球