আপনি কীভাবে ব্যাচে চিঠি পাসওয়ার্ড জেনারেটর তৈরি করবেন?


10

এটিতে এলোমেলো অক্ষর সহ একটি পাসওয়ার্ড জেনারেটর কীভাবে তৈরি করা যায় তা নির্ধারণ করতে আমার খুব কষ্ট হচ্ছে। উদাহরণস্বরূপ, ASWED-ASDWAD-EFEST। এখন পর্যন্ত আমি কেবল কোডটি ব্যবহার করে এলোমেলো নম্বর করতে পারি

@echo off

:password

echo %random%-%random%-%random
pause
goto password

PS: আমার ওএস উইন্ডোজ ভিস্তা v

সমস্ত সাহায্যের প্রশংসা করা হবে.


আমি উইন্ডোজ এনটি-তে% RANDOM% কে cmd.exe এ যুক্ত করেছি। এটি এখনও দরকারী যে দেখে খুশি।
মোশ

উত্তর:


14

এখানে একটি আলোচনা রয়েছে যে আপনি নিজের উদ্দেশ্যে মানিয়ে নিতে পারেন।

@Echo Off
Setlocal EnableDelayedExpansion
Set _RNDLength=8
Set _Alphanumeric=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
Set _Str=%_Alphanumeric%987654321
:_LenLoop
IF NOT "%_Str:~18%"=="" SET _Str=%_Str:~9%& SET /A _Len+=9& GOTO :_LenLoop
SET _tmp=%_Str:~9,1%
SET /A _Len=_Len+_tmp
Set _count=0
SET _RndAlphaNum=
:_loop
Set /a _count+=1
SET _RND=%Random%
Set /A _RND=_RND%%%_Len%
SET _RndAlphaNum=!_RndAlphaNum!!_Alphanumeric:~%_RND%,1!
If !_count! lss %_RNDLength% goto _loop
Echo Random string is !_RndAlphaNum!

TheOutcaste উপরোক্ত ব্যাখ্যা:

আমি এটিকে সংশোধন করেছি যাতে আপনি সহজেই দৈর্ঘ্যটি নির্দিষ্ট করতে পারেন এবং কোডের অন্য কোনও অংশ পরিবর্তন না করে অক্ষর যুক্ত করতে বা সরাতে পারেন।

উদাহরণস্বরূপ, আপনি 0 এবং O উভয় (শূন্য এবং বড় হাতের অক্ষর), বা 1 এবং l (এক এবং লোয়ারকেস এল) উভয়ই ব্যবহার করতে চাইবেন না।

আপনি এই অক্ষরগুলি বাদ দিয়ে বিরামচিহ্ন ব্যবহার করতে পারেন:

! % ^ & < >

আপনি ব্যবহার করতে পারেন ^এবং %, তবে অবশ্যই অবশ্যই _Alphanumeric এটিকে ভেরিয়েবলে ^^ বা twice হিসাবে দ্বিগুণ লিখতে হবে %%। তবে, আপনি যদি ফলাফলটি ( _RndAlphaNum) পরে ব্যাচ ফাইলে (পর্দার প্রতিধ্বনি ছাড়া অন্য) ব্যবহার করতে চান তবে তাদের বিশেষ হ্যান্ডলিংয়ের প্রয়োজন হতে পারে।

এমনকি আপনি কোনও স্থান ব্যবহার করতে পারেন, যতক্ষণ না এটি স্ট্রিংয়ের শেষ অক্ষর নয়। যদি এটি উত্পন্ন স্ট্রিংয়ের শেষ চরিত্র হিসাবে শেষ হয় তবে এটি ব্যবহার করা হবে না, সুতরাং আপনার কেবল 7 টি অক্ষর থাকবে।


সহায়তার জন্য ধন্যবাদ, আমি ব্যাচে এক ধরণের নতুন তাই আমি ভাবছিলাম যে আপনি আমাকে যে কোডটি দেখিয়েছেন তা ব্যাখ্যা করতে আপনি আমাকে সহায়তা করতে পারেন কিনা। আমি এটিকে সহজ করতে চাই যাতে আমি দেখতে পাচ্ছি কোন কোডটি ঠিক এলোমেলো বর্ণগুলি উত্পন্ন করে, ধন্যবাদ।
mendez

1
এগুলি প্রাথমিক অ-ব্যাখ্যামূলক লাইন বলে মনে হচ্ছে: Set /A _RND=_RND%%61- _আরএনডি পূর্বে একটি এলোমেলো সংখ্যায় সেট করা হয়েছিল, এবং এটি 0 এবং 61 এর মধ্যে একটি সংখ্যা পাওয়ার জন্য এটিতে একটি মডিউলাস 61 করে SET _rndalphanum=!_Alphanumeric:~%_RND%,1! It 1 চরিত্র। সুতরাং এটি 0 এবং 61 এর মধ্যে একটি নম্বর চয়ন করছে এবং এ-জা-জেড থেকে এই চরিত্রটি টানছে। এরপরে প্রক্রিয়াটি পুনরাবৃত্তি করে আপনি এলোমেলো অক্ষরের একটি আলফা স্ট্রিং তৈরি করতে পারেন।
পল

দুঃখিত আমি ইদানীং যাইনি তবে আপনার সাহায্যের জন্য আপনাকে সবার জন্য আবারও ধন্যবাদ, আমি এটির প্রশংসা করি।
mendez

3
rem 16 stings pwd

setlocal ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
set alfanum=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789

set pwd=
FOR /L %%b IN (0, 1, 16) DO (
SET /A rnd_num=!RANDOM! * 62 / 32768 + 1
for /F %%c in ('echo %%alfanum:~!rnd_num!^,1%%') do set pwd=!pwd!%%c
)

echo pwd=%pwd%

3
আপনি উত্তরে কিছু ব্যাখ্যা যোগ করতে পারেন?
ChrisF 25'13

আপনি কোডটি পেস্ট করার সময় দয়া করে কোডটি হাইলাইট করবেন এবং বোতামটি টিপুন যা দেখে মনে হচ্ছে { }অন্যথায় এটি পড়া খুব শক্ত করে তোলে sure
স্কট চেম্বারলাইন

1

এটি এটির একটি সহজ এবং মার্জিত সমাধান

@echo off
setlocal enableextensions enabledelayedexpansion

set /P _length=Password Length: %==%
set /a z = %_length%
set "string=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
set "password="
for /L %%i in (1,1,!z!) do call :_genRand
echo Password is:  %password%
goto :EOF

:_genRand
set /a x=%random% %% 62
set password=%password%!string:~%x%,1!
goto :eof

0

আমারটা এখানে. এমেচার, তবে এটি কাজ করে

@Echo OFF
@echo Would You Like Me To Make You A Password? Type Your Response And Press Enter.
set /p ans=
if %ans%==yes (goto yes
)
if %ans%==no (goto exit
)

:exit
cls
@echo Are You Sure?
set /p ans=
if %ans%==yes (goto exit
)
if %ans% NEQ yes (goto yes
)
:yes
cls 
@echo Loading...

@echo OFF
ping localhost -n 4 > Nul
goto hardpart





:hardpart
@echo OFF
cls
@echo Get a peice of paper so you will remember
pause
cls
@echo OFF
set /A r=%RANDOM% %% 25 + 1
cls
if %r%==1 goto 1
if %r%==2 goto 2
if %r%==3 goto 3
if %r%==4 goto 4
if %r%==5 goto 5
if %r%==6 goto 6
if %r%==7 goto 7
if %r%==8 goto 8
if %r%==9 goto 9
if %r%==10 goto 10
if %r%==11 goto 11
if %r%==12 goto 12
if %r%==13 goto 13
if %r%==14 goto 14
if %r%==15 goto 15
if %r%==16 goto 16
if %r%==17 goto 17
if %r%==18 goto 18
if %r%==19 goto 19
if %r%==20 goto 20
if %r%==21 goto 21
if %r%==22 goto 22
if %r%==23 goto 23
if %r%==24 goto 24
if %r%==25 goto 25
if %r%==26 goto 26
:1 
@echo 1st letter is a
goto number2
pause
goto number2
:2
@echo 1st letter is b
pause
goto number2
:3
@echo 1st letter is c
pause
goto number2
:4
@echo 1st letter is d
pause
goto number2
:5
@echo 1st letter is e
pause
goto number2
:6
@echo 1st letter is f
pause
goto number2
:7
@echo 1st letter is g
pause
goto number2
:8
@echo 1st letter is h
pause
goto number2
:9
@echo 1st letter is i
pause
goto number2
:10
@echo 1st letter is j
pause
goto number2
:11
@echo 1st letter is k
pause
goto number2
:12
@echo 1st letter is l
pause
goto number2
:13
@echo 1st letter is m
pause
goto number2
:14
@echo 1st letter is n
pause
goto number2
:15
@echo 1st letter is o
pause
goto number2
:16
@echo 1st letter is p
pause
goto number2
:17
@echo 1st letter is q
pause
goto number2
:18
@echo 1st letter is r
pause
goto number2
:19
@echo 1st letter is s
pause
goto number2
:20
@echo 1st letter is t
pause
goto number2
:21
@echo 1st letter is u
pause
goto number2
:22
@echo 1st letter is v
pause
goto number2
:23
@echo 1st letter is w
pause
goto number2
:24
@echo 1st letter is x
pause
goto number2
:25
@echo 1st letter is y
pause
goto number2
:26
@echo 1st letter is z
pause
goto number2
:number2
@echo OFF
set /A s=%RANDOM% %% 25 + 1
cls
if %s%==1 goto 1a
if %s%==2 goto 2a
if %s%==3 goto 3a
if %s%==4 goto 4a
if %s%==5 goto 5a
if %s%==6 goto 6a
if %s%==7 goto 7a
if %s%==8 goto 8a
if %s%==9 goto 9a
if %s%==10 goto 10a
if %s%==11 goto 11a
if %s%==12 goto 12a
if %s%==13 goto 13a
if %s%==14 goto 14a
if %s%==15 goto 15a
if %s%==16 goto 16a
if %s%==17 goto 17a
if %s%==18 goto 18a
if %s%==19 goto 19a
if %s%==20 goto 20a
if %s%==21 goto 21a
if %s%==22 goto 22a
if %s%==23 goto 23a
if %s%==24 goto 24a
if %s%==25 goto 25a
if %s%==26 goto 26a
:1a 
@echo The next letter is a
pause
goto number2
:2a
@echo The next letter is b
pause
goto number2
:3a
@echo The next letter is c
pause
goto number2
:4a
@echo The next letter is d
pause
goto number2
:5a
@echo The next letter is e
pause
goto number2
:6a
@echo The next letter is f
pause
goto number2
:7a
@echo The next letter is g
pause
goto number2
:8a
@echo The next letter is h
pause
goto number2
:9a
@echo The next letter is i
pause
goto number2
:10a
@echo The next letter is j
pause
goto number2
:11a
@echo The next letter is k
pause
goto number2
:12a
@echo The next letter is l
pause
goto number2
:13a
@echo The next letter is m
pause
goto number2
:14a
@echo The next letter is n
pause
goto number2
:15a
@echo The next letter is o
pause
goto number2
:16a
@echo The next letter is p
pause
goto number2
:17a
@echo The next letter is q
pause
goto number2
:18a
@echo The next letter is r
pause
goto number2
:19a
@echo The next letter is s
pause
goto number2
:20a
@echo The next letter is t
pause
goto number2
:21a
@echo The next letter is u
pause
goto number2
:22a
@echo The next letter is v
pause
goto number2
:23a
@echo The next letter is w
pause
goto number2
:24a
@echo The next letter is x
pause
goto number2
:25a
@echo The next letter is y
pause
goto number2
:26a
@echo The next letter is z
pause
goto number2

আপনি কোডটি পেস্ট করার সময় দয়া করে কোডটি হাইলাইট করবেন এবং বোতামটি টিপুন যা দেখে মনে হচ্ছে { }অন্যথায় এটি পড়া খুব শক্ত করে তোলে sure
স্কট চেম্বারলাইন

0

আমি পালস একটি সম্পাদনা করেছি:

@Echo Off
color 0a
set /P lengthnumberuser="What length do you want your password to be?   "
pause
cls
Setlocal EnableDelayedExpansion
Set _RNDLength=%lengthnumberuser%
Set _Alphanumeric=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
Set _Str=%_Alphanumeric%987654321
:_LenLoop
IF NOT "%_Str:~18%"=="" SET _Str=%_Str:~9%& SET /A _Len+=9& GOTO :_LenLoop
SET _tmp=%_Str:~9,1%
SET /A _Len=_Len+_tmp
Set _count=0
SET _RndAlphaNum=
:_loop
Set /a _count+=1
SET _RND=%Random%
Set /A _RND=_RND%%%_Len%
SET _RndAlphaNum=!_RndAlphaNum!!_Alphanumeric:~%_RND%,1!
If !_count! lss %_RNDLength% goto _loop
Echo Password is: is !_RndAlphaNum!

pause

0
:generator
@Echo Off
Setlocal EnableDelayedExpansion
Set _RNDLength=8
Set _Alphanumeric=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
Set _Str=%_Alphanumeric%987654321
:_LenLoop
IF NOT "%_Str:~18%"=="" SET _Str=%_Str:~9%& SET /A _Len+=9& GOTO :_LenLoop
SET _tmp=%_Str:~9,1%
SET /A _Len=_Len+_tmp
Set _count=0
SET _RndAlphaNum=
:_loop
Set /a _count+=1
SET _RND=%Random%
Set /A _RND=_RND%%%_Len%
SET _RndAlphaNum=!_RndAlphaNum!!_Alphanumeric:~%_RND%,1!
If !_count! lss %_RNDLength% goto _loop
Echo Random string is !_RndAlphaNum!

এটি কাজ করে তবে ঠিকঠাক কাজ করে না যখন আমরা এটিকে উপ হিসাবে স্মরণ করি। (যেমন আপনি সাব্রোটিন: জেনারেটর কল করার সময় অপ্রত্যাশিত ত্রুটি।


এটি কি পল এর উত্তর থেকে কিছুটা আলাদা?
স্টিভেস্টেল

0

বড় হাতের অক্ষর, ছোট হাতের সংখ্যা এবং সংখ্যা সহ 16 টি অক্ষর সহ এটি একটি সম্পূর্ণরূপে তৈরি সংস্করণ। এটি একটি রোকি সংস্করণ তাই এটি "জন্য" এর মতো কোনও জটিল কমান্ড অন্তর্ভুক্ত করে না তবে এটি ভালভাবে কাজ করে। কেবলমাত্র ডাউনসাইড হ'ল এটি পিছিয়ে যেতে পারে এবং মাঝেমধ্যে কাজ বন্ধ করতে পারে যদি আপনি খুব বেশি লাইন তৈরি করেন।

@echo off
title Random
:trigger
set trigger=16
:genKeys
set /a trigger=%trigger% - 1
set /a choose=(%random%*3/32767)+1
if %choose% == 1 goto lowercase
if %choose% == 2 goto uppercase
if %choose% == 3 goto number
:lowercase
set /a lower=(%random%*25/32767)+0
if %lower% == 0 set gen%trigger%=a
if %lower% == 1 set gen%trigger%=b
if %lower% == 2 set gen%trigger%=c
if %lower% == 3 set gen%trigger%=d
if %lower% == 4 set gen%trigger%=e
if %lower% == 5 set gen%trigger%=f
if %lower% == 6 set gen%trigger%=g
if %lower% == 7 set gen%trigger%=h
if %lower% == 8 set gen%trigger%=i
if %lower% == 9 set gen%trigger%=j
if %lower% == 10 set gen%trigger%=k
if %lower% == 11 set gen%trigger%=l
if %lower% == 12 set gen%trigger%=m
if %lower% == 13 set gen%trigger%=n
if %lower% == 14 set gen%trigger%=o
if %lower% == 15 set gen%trigger%=p
if %lower% == 16 set gen%trigger%=q
if %lower% == 17 set gen%trigger%=r
if %lower% == 18 set gen%trigger%=s
if %lower% == 19 set gen%trigger%=t
if %lower% == 20 set gen%trigger%=u
if %lower% == 21 set gen%trigger%=v
if %lower% == 22 set gen%trigger%=w
if %lower% == 23 set gen%trigger%=x
if %lower% == 24 set gen%trigger%=y
if %lower% == 25 set gen%trigger%=z
if %trigger% == 0 goto keys
goto genKeys
:uppercase
set /a upper=(%random%*25/32767)+0
if %upper% == 0 set gen%trigger%=A
if %upper% == 1 set gen%trigger%=B
if %upper% == 2 set gen%trigger%=C
if %upper% == 3 set gen%trigger%=D
if %upper% == 4 set gen%trigger%=E
if %upper% == 5 set gen%trigger%=F
if %upper% == 6 set gen%trigger%=G
if %upper% == 7 set gen%trigger%=H
if %upper% == 8 set gen%trigger%=I
if %upper% == 9 set gen%trigger%=J
if %upper% == 10 set gen%trigger%=K
if %upper% == 11 set gen%trigger%=L
if %upper% == 12 set gen%trigger%=M
if %upper% == 13 set gen%trigger%=N
if %upper% == 14 set gen%trigger%=O
if %upper% == 15 set gen%trigger%=P
if %upper% == 16 set gen%trigger%=Q
if %upper% == 17 set gen%trigger%=R
if %upper% == 18 set gen%trigger%=S
if %upper% == 19 set gen%trigger%=T
if %upper% == 20 set gen%trigger%=U
if %upper% == 21 set gen%trigger%=V
if %upper% == 22 set gen%trigger%=W
if %upper% == 23 set gen%trigger%=X
if %upper% == 24 set gen%trigger%=Y
if %upper% == 25 set gen%trigger%=Z
if %trigger% == 0 goto keys
goto genKeys
:number
set /a number=(%random%*9/32767)+0
set gen%trigger%=%number%
goto genKeys
:keys
cls
echo %gen15%%gen14%%gen13%%gen12%%gen11%%gen10%%gen9%%gen8%%gen7%%gen6%%gen5%%gen4%%gen3%%gen2%%gen1%%gen0%
pause >nul
goto trigger
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.