Como tono jocoso, una vez vi (creo que en slashdot) una graciosa recomendación para obtener cadenas de texto aleatorias:
Abrir vim en la consola, y decirle a un usuario novato en Linux que intente cerrarlo.

Algo como pwgen ??hugo escribió:Como podria hcer un script en bash para obtener cadenas de texto aleatorias (como de las que pueden utilizarse para una contraseña) de una longitud que yo defina como primer argumento?
Como tono jocoso, una vez vi (creo que en slashdot) una graciosa recomendación para obtener cadenas de texto aleatorias:
Abrir vim en la consola, y decirle a un usuario novato en Linux que intente cerrarlo.
Quizás, el problema es que eso está programado en C. Mi interés era mas bien para estudiar la manera en que funciona la generación y manipulación de cadenas aleatorias en bash. Utilidades para generar contraseñas hay muchas; es mas, hace tiempo yo mismo hice una herramientica de este tipo en Delphi para poner en práctica un tutorial de máscaras que vi por alguna parte.KZKG^Gaara escribió:Algo como pwgen ??
Código: Seleccionar todo
#!/bin/bash
MAXSIZE=62
array1=(
q w e r t y u i o p a s d f g h j k l z x c v b n m Q W E R T Y U I O P A S D
F G H J K L Z X C V B N M 1 2 3 4 5 6 7 8 9 0 \! \@ \# \$ \% \^ \& \* \( \)
\! \@ \# \$ \% \^ \& \* \( \) \! \@ \# \$ \% \^ \& \* \( \) \! \@ \# \$ \%
)
MODNUM=${#array1[*]}
pwd_len=0
while [ $pwd_len -lt $MAXSIZE ]
do
index=$(($RANDOM%$MODNUM))
echo -n "${array1[$index]}"
((pwd_len++))
done
echo
exit 0
Código: Seleccionar todo
uuidgen | cut -c-50