Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Aiuto per il mio script...

    Ho creato uno script shell con l'intento di associare ad ogni utente una password generata a random di 8 caratteri e il risultato che voglio ottenere è un output del tipo

    Utente1 Password1
    Utente2 Password2
    Utente3 Password3
    Utente4 Password4

    però non ci riesco ed ottengo una cosa del tipo:

    Utente1 Password1
    Utente2 Password1
    Utente3 Password1
    Utente4 Password1

    praticamente la password è uguale per ogni utente! Non capisco dove sbaglio! Qualcuno di voi mi sa aiutare?
    Probabilmente l'errore sta nel ciclo for ma non capisco dove... :-(
    Grazie mille...
    codice:
    #!/bin/bash
    for utente in Utente1 Utente2 Utente3 Utente4
    do
    	# Genero una Password per ogni utente
    	MATRICE="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
     	LUNGHEZZA="8"
     	while [ "${n:=1}" -le "$LUNGHEZZA" ]
     	do
     		PASS="$PASS${MATRICE:$(($RANDOM%${#MATRICE})):1}"
     		let n+=1
    	done
    	# Mando a video l'accoppiata NomeUtente Password
    	echo "$utente" "$PASS"
    done 
    exit 0
    Grazie molte a chiunque possa aiutarmi

  2. #2
    Non so cosa faccia quel ${n:=1} ma prova così, da me funziona:

    codice:
    #!/bin/bash
    for utente in Utente1 Utente2 Utente3 Utente4
    do
    	# Genero una Password per ogni utente
    	MATRICE="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
     	LUNGHEZZA="8"
    	RANDOM=$(head -1 /dev/urandom | od -N 1 | awk '{ print $2 }')
    	PASS=""
    	n=1
     	while [ "${n:=1}" -le "$LUNGHEZZA" ]
     	do
     		PASS="$PASS${MATRICE:$(($RANDOM%${#MATRICE})):1}"
     		let n+=1
    	done
    	# Mando a video l'accoppiata NomeUtente Password
    	echo "$utente" "$PASS"
    done 
    exit 0
    Tu prima non azzeravi la stringa PASS e non reinizializzavi il contatore n. Inoltre ho aggiunto l'inizializzazione di un nuovo seme casuale ad ogni giro.
    GreyFox (Linux registered user #435102)
    greyfox.imente.org - GreyFox's shots (photo gallery)
    $ cd /pub
    $ more beer

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.