From 640a31a8edeb8e2eb1f33e10042536fe824915d7 Mon Sep 17 00:00:00 2001 From: Dawid Potyra Date: Sat, 9 Mar 2024 03:06:40 +0100 Subject: [PATCH] add PyNStrings modules --- PyNStrings/PyNStrings.psd1 | Bin 0 -> 8638 bytes PyNStrings/PyNStrings.psm1 | 52 +++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 PyNStrings/PyNStrings.psd1 create mode 100644 PyNStrings/PyNStrings.psm1 diff --git a/PyNStrings/PyNStrings.psd1 b/PyNStrings/PyNStrings.psd1 new file mode 100644 index 0000000000000000000000000000000000000000..ff853f2f252b354df8fb4cf23f21e86329619154 GIT binary patch literal 8638 zcmd^_YfoE85Qg`2rT&K_@c~j5NC-_y)mA}V5~L)JfTaCOd;uCTu5ALS%3p8$K0BW5 z*>fQVfmF4!%(2heot=5-KIZSg=EB$Et1uUe@G6{zZa5Dop{H-B;UEmcap>#YI81b> zujixqq`YoEya`v~b=cFIk=75wq1Mk&sXFcFqB78XB&ri#yQ1@6`+m^1t9uvP*$u-P zcAbe1yB>z8VM%`<>+g!LD`B;?n{%IqKjR(eVJ~zdhr=k%X(p{n_CE4|pjB5jIs1BM z$Q($%v37TKCrN_@lW?Sc{5{r+I)+P;pIz-e)2bZrpR~Ri%O&A5mOdU$QFVFVMLfqk z3rq^V&$a4(yj$pAzrst>n(xvc@z-_Wz(mhyr+|fdV!j2^NlQEOF9Gv<7hn9 zM-eu(@>J_V>sTCuW7GN~aPG6P5FTWj+XxAX-#w=>dmL8y2E=de5VzU z^;*&A9I1722M=an*XabF^3}#y**l8xqc}_6@=Ta^^%_b~Lt*f9<@AL6AfjPhe2f@% zXXGiT@mi;!YQJd;d&QEkqF*m53T%b_1|EiS#jzs8kyaPd<7DbN&_Z7+y0mKyPO6j) zqXlX0foOOf$YaWqo~#R<6J3c=#s&U4(&^aLD1b>HLk{9F0`hII=_fJ_H-`32eRn#Fs=j>ki|2Ps1n~G#gl#>sICG(= zqwwLz7KP96%Q`I&@m{SCYwnZd3Or^46aI*5$i9WS#Gh&O6o1YJ(F=h<~2zdKl#z#i&KhvUt9rEd4U< z#yFag;?tMB_uq%LNiqwjZ)6oza^wLlkr+xOC8C;*5ZBM6?G&m@UPnB8;ajcyP1*iQ z{Io6%yZXF(3-sJR>YS{%^3fbiQXavku>a`o$z-lVDob_?Jv`|Uf{Z1H>Z8O;;Eb|%2g?HAZxuMT#x$di5IHL zBy}4KKO3tsG0k`6Y1>P3hAb!~N`o~Wuv zs$if)Hoj|(rC3(xf2=rrrYKqVqc*MWDuRONQ|e4K zN-vB~ZNFLPuJ%>?+~ut6ty_*qL-M5aQj;8l*GD6N^Ep;*YA*uJMMVx1x=oy|l(iLvVz~s_=2QdlHwR*%o z+PWg<5S(G1uTj9av3u(;piZr1-LH52R_jh9Ga-Nn<^i|m;J+I?tUtOA9kYNO#b)fO z=JGheR0scOZd{EKJj2`Do~^|vb&uYZ&u=IyQ8!W9Q^Q-Gf4jWE33H;iDQcZqwdPdY zWzDVqWz0F`3d^b>d!ldUtcv|HE$yiDwSJAf(L7;JnF|ifxiX#99I5LO+UNGOaa^w9 zZpZDmupsx{hSTy?ylOK|lG*yMY{_OYxs24W$8io|d6+3HGfKA=_?a3zk>NI_SpW(&{a^WvafZJH|U5;8;}--z>J4t%!c8JhgywZijp$o3qks zrYStX-!#uhEEeRLCa%mH({D3gJLJ5#t@71#I(uJS@oN*P@OuOi+$zvXM5wvKb6klF zR7W<$WQvnKEY~Y2;q^>%sjaNqq6e`#5BNjrP<-Ictg)WdkZ_*;n)B}7nJm)R`IYtS zdcRfNd8uoXj#H7E$TpbDju@rFRSBYi4eR_r++N^k4l!(R4vPo*!fj%GU8x{_d%aU-A>EH!cFEBGBs^X`qldN}MO?KH%39p%tvF&bc6U-9to)OEuebUJw zvn52y%O+DEz3Pz{3cTBPm-A1GmF;xk;6>zhC>;%AZ)y=@=QB^ux`vDDP9h8Y?h92S z!Uw&V8~VaB#z@6%y)WD0KM|;t%#NuxF7?fQ*XP^TRbyM_KHsvymwJ6N!7tO84*vAw z<{@19*3Jic(0yu0vCAi_i&+g;#7-ESGX5>H)TP{z6)~+hX^1qw!*!B8?o+fQwD=Dh C2Y^HX literal 0 HcmV?d00001 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