Bash - generowanie hasła
Jest wiele sposobów na wygenerowanie hasła. Służą do tego wyspecjalizowane programy(pwgen, keepass itp). Link do tej strony pokazuje "ocean możliwości". Można również samemu sobie stworzyć automat w postacji skryptu bash. Bash się do tego nadaje idealnie.
#!/usr/bin/env sh
sumaZnakow='16'
probkiHasel='6'
#opcja z argumentami
#sumaZnakow=$1
#probkiHasel=$2
echo "Generowanie $probkiHasel haseł. Hasło ma długość $sumaZnakow znaków"
for ((n=0; n<$probkiHasel; n++))
do dd if=/dev/urandom count=1 2> /dev/null | uuencode -m - | sed -ne 2p | cut -c-$sumaZnakow
done
Wartości dwóch pierwszych zmiennych można zastąpić argumentami $1, $2
Wtedy wywołanie będzie:
bash generowanieHasla.sh 16 6
Aktualizacja
W Ubuntu (u mnie 20.04) trzeba doinstalować pakiet sharutils aby można było używać narzędzia uuencode. Zmodyfikowałem zatem skrypt aby automatycznie doinstalowywał pakiet.
#!/usr/bin/env sh
sumaZnakow='16'
probkiHasel='20'
[ -f /usr/bin/uuencode ] && echo "Generowanie Haseł" || echo "Brak zainstalowanego pakietu uuencode $(sudo apt install -q sharutils -y)"
#opcja z argumentami
#sumaZnakow=$1
#probkiHasel=$2
echo "Generowanie $probkiHasel haseł. Hasło ma długość $sumaZnakow znaków"
for ((n=0; n<$probkiHasel; n++))
do dd if=/dev/urandom count=1 2> /dev/null | uuencode -m - | sed -ne 2p | cut -c-$sumaZnakow
done