diff --git a/PyNStrings/PyNStrings.psd1 b/PyNStrings/PyNStrings.psd1 new file mode 100644 index 0000000..ff853f2 Binary files /dev/null and b/PyNStrings/PyNStrings.psd1 differ diff --git a/PyNStrings/PyNStrings.psm1 b/PyNStrings/PyNStrings.psm1 new file mode 100644 index 0000000..56ab259 --- /dev/null +++ b/PyNStrings/PyNStrings.psm1 @@ -0,0 +1,52 @@ +function Get-PyNString { + [CmdletBinding()] + param ( + [Parameter( + Position = 0 + )] + [ValidateNotNullOrEmpty()] + [ValidateScript({ + if ($_ -lt 6) { + throw $"$_ has invalid length. It must be 6 or greater." + } else { $true } + })] + #Length of the string to generate. Must be at least 6. + [int]$Length = 6 + ) + + Write-Host $(python -c "import string,random; print(''.join(random.SystemRandom().choice(string.digits+string.ascii_letters) for _ in range ($Length)))") + + <# + .SYNOPSIS + Generate N-chars long string using python + .DESCRIPTION + Generate N-chars long string using python. Can be used to generate random passwords. + .EXAMPLE + PS> Get-Py32String + Y09Sk6TLNKAEqgEVaUPHsMZ6zA4I0Zzs + .EXAMPLE + PS> Get-Py16String + Mca6nUotYpWLdoyD + .EXAMPLE + PS> Get-Py8String + 15g0DJKP + .LINK + https://git.potyra.net/dawidp/powershell/wiki/PyNStrings + #> +} + +function Get-Py32String { + Write-Host $(Get-PyNString 32) +} + +function Get-Py16String { + Write-Host $(Get-PyNString 16) +} + +function Get-Py8String { + Write-Host $(Get-PyNString 8) +} + +New-Alias py32s Get-Py32String +New-Alias py16s Get-Py16String +New-Alias py8s Get-Py8String