Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在bash脚本中使用urandom生成随机密码_Bash_Random_Passwords - Fatal编程技术网

在bash脚本中使用urandom生成随机密码

在bash脚本中使用urandom生成随机密码,bash,random,passwords,Bash,Random,Passwords,我试图在linux中创建一个3位数的随机密码,但条件如下: 使用铀 至少有一个大写字母 至少有一个小写字母 至少一个数字 您可以迭代随机排序的正则表达式a-z、a-z和0-9,并将正则表达式传递给tr: 对于$(sort-R)中的regex,这可能是开始点perl-le'print map{(a..z,a..z,0..9)[rand 62]}0..2'欢迎来到Stack Overflow。这也是一个面向专业和热心程序员的问答网站。目标是你在问题中添加一些自己的代码,以显示至少你自己为解决这个问

我试图在linux中创建一个3位数的随机密码,但条件如下:

  • 使用铀
  • 至少有一个大写字母
  • 至少有一个小写字母
  • 至少一个数字

您可以迭代随机排序的正则表达式
a-z
a-z
0-9
,并将正则表达式传递给
tr


对于$(sort-R)中的regex,这可能是开始点
perl-le'print map{(a..z,a..z,0..9)[rand 62]}0..2'
欢迎来到Stack Overflow。这也是一个面向专业和热心程序员的问答网站。目标是你在问题中添加一些自己的代码,以显示至少你自己为解决这个问题所做的研究工作。我打算建议投资
pwgen-n-c3
(为什么要重新发明轮子)因为它使用了
/dev/uradom
(per
strace
),但显然你不能强迫它包含小写字母,只有数字和大写。
printf$'%s%s%s\n'$({printf'%s\n'{a..Z}shuf头-n1;printf'%s\n'{a..Z}shuf头-n1这个代码不总是输出3个字符。当我在一个循环中运行100000次时,它输出2个字符1880次和1个字符一次。问题是100个字符的字符串不包含一个需要的字符类型的可能性很小。这是PAR。尤其是数字,因为256个可能的字符中只有10个(几乎所有两个字符的输出都缺少一个数字)