
depois de pesquisar neste site "como gerar uma senha com CMD" encontrei alguns exemplos muito úteis. Então, eu queria poder imprimir mais de uma senha por vez (quem gostaria de clicar nela o dia todo) e encontrei um código que pode executar o código do gerador por um número definido de tempo. O que quero fazer a seguir é tentar imprimir todas as senhas geradas em um único arquivo .txt. Eu sei que você tem que usar o "command > [drive:\path*.txt]" para isso, mas não sei como :/. Depois de combinar o gerador e o código do loop, obtive algo assim, mas imprime apenas uma senha no arquivo. Quando o outro é gerado, o antigo é substituído. Qualquer ajuda? :D
@echo off
set execute counter=0
:loop
(@Echo off
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% > D:\password.txt
) :: This here between the () is the on line password generator
set /a executecounter=%executecounter%+1
if "%executecounter%"=="30" goto done
goto loop
:done
echo Complete!
pause
Responder1
Você está muito perto.
O operador > significa: escrever em um arquivo de texto. Se o arquivo de texto já existir, substitua. Caso contrário, crie um novo arquivo. Isso desfará sua senha anterior.
O operador >> é o que você precisa. Significa: escreva em um arquivo de texto. Se o arquivo de texto já existir, anexe a ele. Caso contrário, crie um novo arquivo.
Então substitua
echo pwd=%pwd% > D:\password.txt
com:
echo pwd=%pwd% >> D:\password.txt
Se você quiser criar uma linha em branco nesse mesmo arquivo, adicione: echo. >> D:\senha.txt
Sua saída será então:
pwd=randompass
pwd=randompass
Isto é útil se você quiser armazenar mais informações além da senha, por exemplo:
set foruser /p "for which user is this?"
echo -------------- >> d:\password.txt
echo Password generated at %date% %time%. >> d:\password.txt
echo Password was made for user: %foruser%
echo pwd=randompass >> d:\password.txt
echo -------------- >> d:\password.txt
echo. >> d:\password.txt