脚本作用:产生随机密码。每密码字符个数,密码数量,存盘位置等可以自定义。
脚本用法:
脚本采用了硬编码,所以你需要打开脚本,修改如下变量:
$生成密码总个数 = 1000
$每个密码位数 = 12
$存盘目录 = 'e:\脚本ps\log_ps\'
$大文件所在盘符 = 'f:\'
并保存,然后运行脚本,脚本运行的较慢,可以缩小powershell窗口,n分钟后去【$存盘目录】收取生成的密码
文件【小写加数字加特殊符号密码.txt】,【大小写加数字密码.txt】,【小写加数字密码.txt】。
提示:打入盘符+路径+s+<tab>键,脚本名自动补全。

全部代码:
#本脚本会在 $存盘目录 下生成3个文件(小写加数字密码.txt,大小写加数字密码.txt,小写加数字加特殊符号密码.txt)
#每个文件中含有 $生成密码总个数 个密码。
#这个脚本根据大文件作为随机数种子,加随机数产生密码。找不到大文件将无法产生密码。
$生成密码总个数 = 1000
$每个密码位数 = 12
$存盘目录 = 'e:\脚本ps\log_ps\'
$大文件所在盘符 = 'f:\'
[array]$大文件类型 = "*.rmvb","*.mkv","*.mp4","*.avi"
$小写加数字密码 = $存盘目录 + '小写加数字密码.txt'
$含大写密码 = $存盘目录 + '大小写加数字密码.txt'
$含特殊符号密码 = $存盘目录 + '小写加数字加特殊符号密码.txt'
#$ErrorActionPreference = "SilentlyContinue"
$最大的10个文件 = Get-ChildItem -path $大文件所在盘符 -recurse -force -Include $大文件类型 | Sort-Object length -Descending | select-object -first 10
if ($最大的10个文件.Length -lt 10)
{
Write-Error "这个脚本根据大文件作为随机数种子,加随机数产生密码。找不到大文件将无法产生密码。"
Write-Error "在 $大文件所在盘符 找不到 $大文件类型 文件,或文件总数不够10个"
exit
}
$密码种子文件 = $最大的10个文件 | Get-Random
Write-Host "这个脚本根据大文件作为随机数种子,加随机数产生密码。找不到大文件将无法产生密码。"
Write-Host $密码种子文件.FullName,$密码种子文件.length
mkdir $存盘目录
Write-Host "---生成的密码个数:$生成密码总个数 生成位置:$存盘目录 "
$文件流 = new-object system.io.filestream($密码种子文件,"open")
$null = $文件流.seek(0,0)
$reader = new-object System.IO.BinaryReader($文件流)
$小写字母 = "a","b","c","d","e","f","g","h","i","j","k","m","n","o","p","q","r","s","t","u","v","w","x","y","z"
#小写字母没有字母 l
$数字 = "2","3","4","5","6","7","8","9"
#没有0,1
$大写字母 = "A","B","C","D","E","F","G","H","J","K","L","M","N","P","Q","R","S","T","U","V","W","X","Y","Z"
$特殊符号 = "~","!","@","#","$","%","^","&","*","(",")"
#大写字母没有字母 I,O
$小写加数字 = $小写字母 + $数字
$大小写加数字 = $大写字母 + $小写字母 + $数字
$含特殊符号 = $小写字母 + $数字 + $特殊符号
$小写加数字密码个数 = 0
while ($小写加数字密码个数 -lt $生成密码总个数)
{
$一个密码 = $null
while ($一个密码.length -lt $每个密码位数)
{
$源自文件的随机数 = $reader.Readbyte()
$ps随机数 = 1..50 | Get-Random
$随机数 = $源自文件的随机数 - $ps随机数
if (($随机数 -lt 123) -and ($随机数 -ge 32) )
{
$密码字母 = [char][int]$随机数
if ($小写加数字 -ccontains $密码字母)
{
$一个密码 = $一个密码 + $密码字母
}
}
}
$结果 = $一个密码
if ($结果 -match "[0-9]+")
{
#洗牌
$结果 = $结果 | Get-Random -Count $每个密码位数
$结果 >> $小写加数字密码
Write-Host "." -NoNewline -ForegroundColor Yellow
$小写加数字密码个数++
}
}
Write-Host "`n---完成 $生成密码总个数 个【小写加数字】密码创建---"
$含大写密码个数 = 0
while ($含大写密码个数 -lt $生成密码总个数)
{
$一个密码 = $null
while ($一个密码.length -lt $每个密码位数)
{
$源自文件的随机数 = $reader.Readbyte()
$ps随机数 = 110..150 | Get-Random
$随机数 = $源自文件的随机数 - $ps随机数
if (($随机数 -lt 123) -and ($随机数 -ge 32) )
{
$密码字母 = [char][int]$随机数
if ($大小写加数字 -ccontains $密码字母)
{
$一个密码 = $一个密码 + $密码字母
}
}
}
$结果 = $一个密码
if ($结果 -match "[0-9]+")
{
#洗牌
$结果 = $结果 | Get-Random -Count $每个密码位数
$结果 >> $含大写密码
Write-Host "." -NoNewline -ForegroundColor Yellow
$含大写密码个数++
}
}
Write-Host "`n---完成 $生成密码总个数 个【大写小写加数字】密码创建---"
$含特殊符号密码个数 = 0
while ($含特殊符号密码个数 -lt $生成密码总个数)
{
$一个密码 = $null
while ($一个密码.length -lt $每个密码位数)
{
$源自文件的随机数 = $reader.Readbyte()
$ps随机数 = 1..50 | Get-Random
$随机数 = $源自文件的随机数 - $ps随机数
if (($随机数 -lt 123) -and ($随机数 -ge 32) )
{
$密码字母 = [char][int]$随机数
if ($含特殊符号 -ccontains $密码字母)
{
$一个密码 = $一个密码 + $密码字母
}
}
}
$结果 = $一个密码
if ($结果 -match "[0-9]+")
{
#洗牌
$结果 = $结果 | Get-Random -Count $每个密码位数
$结果 >> $含特殊符号密码
Write-Host "." -NoNewline -ForegroundColor Yellow
$含特殊符号密码个数++
}
}
Write-Host "`n---完成 $生成密码总个数 个【小写加数字加特殊符号】密码创建---"
#Write-Host `n,$文件流.Position
$文件流.Dispose()
Write-Host "`n---完成3种密码,每种: $生成密码总个数 个密码创建---`n别告诉我你缺密码!`n勤修改密码!"
打包下载:getpwd_jb51.rar
------【脚本特色】------
不求最快,但求真随机。
伪随机数:
随机密码其实就是随机数的组合而已,.net的随机数生成很快很好,但也是伪随机数。python的随机数功能
也很快很好,但也只是伪随机数而已。生成的都是伪随机数。
真随机数:
没法生成真随机数,只能【取】真随机数。
本脚本之妙:
我写了好几个版本的随机密码生成,开始都是用【调用库,生成伪随机数】法。后来我找到了【取真随机数】的方法,我简直忍不住要赞美我啊,呵呵。
可以自定义随机字符:
比如:本脚本生成器生成的随机数中,默认没有0,1 , i, l,o这些容易混淆的字母。
开放源码,无后门。
脚本缺点:比较慢。
------【脚本原理,流程】------
脚本首先会用dir你的【$大文件所在盘符】。这一步比较慢,无权限会报错的信息我也没关闭,目的是直观。
找出【$大文件类型】定义的10个最大的文件,这些文件默认是 "*.rmvb","*.mkv","*.mp4","*.avi"
没错,就是【从大电影文件中取真随机数】!
随机选其中一个文件,按照一定规则取数,然后组合成固定长度的密码,然后再随机打乱顺序,
然后根据是否有数字,特殊符号,抛弃不符合的随机数。
本脚本另一个妙的地方是:(为了随机故意而为的算法)
即便你锁定(固定)输入源,即大电影文件,
只要文档内,字节内容随机,产生的密码就随机。即2次运行脚本,将产生2个同名文档(当然你要把前面的改名),对比之,发现生成的每个随机数都不同。
如果文档内,字节内容固定,如都是00,255之类,则不会产生密码。
------【最终建议】------
建议5年内更换一次有可能泄密的帐号。如果实在不能换帐号,必须5年内登录(使用)过1次。
超5年不换账号,不登陆的银行卡的钱,都有可能没了。连国家过个10年8年都更改钱的样式。
powershell 传教士 原创文章 2016-02-06 允许转载,但必须保留名字和出处,否则追究法律责任
建议每年更换密码,或者更短的时间更换密码。密码必须复杂,不同帐号的密码绝不相同。
复杂的密码记在电脑上,然后加密。复制3份,放在不同地方,每半年更新。
本人脚本新作【灰主牛 隐私记事本】 正在创作中,敬请期待。。。
# 随机密码生成器
# PowerShell 指令操作集合(小结)
# 如何利用PowerShell监控Win-Server性能详解
# PowerShell中Job相关命令及并行执行任务详解
# 基于PowerShell在Ubuntu系统的使用详解
# PowerShell 远程执行任务的方法步骤
# 使用 powershell 创建虚拟机
# 通过DNS TXT记录执行powershell
# PowerShell实现简单的grep功能
# PowerShell 语音计算器实现代码
# 原创powershell脚本小工具ctracert.ps1跟踪路由(win8以上系统)
# powershell玩转SQL SERVER所有版本的方法
# powershell玩转sqlite数据库详细介绍
# PowerShell基本使用教程
# 随机数
# 大文件
# 特殊符号
# 找不到
# 都是
# 帐号
# 很好
# 自定义
# 文档
# 比较慢
# 年内
# 都有
# 放在
# 有可能
# 会在
# 的钱
# 要把
# 采用了
# 但也
# 然后再
相关文章:
微网站制作教程,我微信里的网站怎么才能复制到浏览器里?
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
制作宣传网站的软件,小红书可以宣传网站吗?
如何在IIS管理器中快速创建并配置网站?
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
建站之星多图banner生成与模板自定义指南
建站之星后台密码遗忘或太弱?如何重置与强化?
制作网站的基本流程,设计网站的软件是什么?
如何快速搭建安全的FTP站点?
建站之星与建站宝盒如何选择最佳方案?
如何在Windows虚拟主机上快速搭建网站?
如何用AWS免费套餐快速搭建高效网站?
如何通过.red域名打造高辨识度品牌网站?
沈阳个人网站制作公司,哪个网站能考到沈阳事业编招聘的信息?
h5在线制作网站电脑版下载,h5网页制作软件?
如何通过虚拟主机快速完成网站搭建?
建站之星伪静态规则如何设置?
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
ui设计制作网站有哪些,手机UI设计网址吗?
交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?
微信小程序制作网站有哪些,微信小程序需要做网站吗?
如何通过宝塔面板实现本地网站访问?
桂林网站制作公司有哪些,桂林马拉松怎么报名?
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
,交易猫的商品怎么发布到网站上去?
香港服务器网站卡顿?如何解决网络延迟与负载问题?
制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?
电商平台网站制作流程,电商网站如何制作?
如何通过云梦建站系统实现SEO快速优化?
如何在景安服务器上快速搭建个人网站?
台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?
动图在线制作网站有哪些,滑动动图图集怎么做?
,网页ppt怎么弄成自己的ppt?
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
如何访问已购建站主机并解决登录问题?
广平建站公司哪家专业可靠?如何选择?
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
青浦网站制作公司有哪些,苹果官网发货地是哪里?
建站之星如何保障用户数据免受黑客入侵?
为什么Go需要go mod文件_Go go mod文件作用说明
如何在阿里云虚拟服务器快速搭建网站?
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
如何快速搭建虚拟主机网站?新手必看指南
南平网站制作公司,2025年南平市事业单位报名时间?
*服务器网站为何频现安全漏洞?
如何彻底卸载建站之星软件?
网站制作话术技巧,网站推广做的好怎么话术?
建站为何优先选择香港服务器?
网站制作免费,什么网站能看正片电影?
*请认真填写需求信息,我们会在24小时内与您取得联系。