PowerShell/Scripts/list-random-pins.ps1

35 lines
777 B
PowerShell
Raw Normal View History

2020-12-22 10:12:50 +01:00
#!/snap/bin/powershell
2020-12-29 15:14:21 +01:00
<#
.SYNTAX ./list-random-pins.ps1 [<pin-length>] [<columns>] [<rows>]
.DESCRIPTION prints a list of random PIN's
.LINK https://github.com/fleschutz/PowerShell
.NOTES Author: Markus Fleschutz / License: CC0
#>
2020-12-22 10:12:50 +01:00
2020-12-29 15:14:21 +01:00
param([int]$PinLength = 5, [int]$Columns = 12, [int]$Rows = 24)
2020-12-22 10:12:50 +01:00
2021-01-27 15:12:17 +01:00
function GeneratePIN {
2020-12-22 10:12:50 +01:00
$Generator = New-Object System.Random
2020-12-29 15:14:21 +01:00
for ($i = 0; $i -lt $PinLength; $i++) {
2020-12-22 10:12:50 +01:00
$PIN += [char]$Generator.next(48,57)
}
return $PIN
}
try {
write-output ""
2020-12-29 15:14:21 +01:00
for ($j = 0; $j -lt $Rows; $j++) {
2020-12-22 10:12:50 +01:00
$Line = ""
for ($k = 0; $k -lt $Columns; $k++) {
$Line += GeneratePIN
$Line += " "
}
write-output $Line
}
write-output ""
exit 0
} catch {
write-error "ERROR in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
exit 1
}