31 lines
981 B
Bash
31 lines
981 B
Bash
#!/bin/bash
|
|
|
|
file='./Users.csv'
|
|
loginFile='./logins.csv'
|
|
|
|
|
|
rm $loginFile 2> /dev/null # Redirection des erreurs
|
|
touch $loginFile
|
|
|
|
|
|
|
|
while read line # Utilisation d'une boucle while car plus paratique pour lire un fichier
|
|
do
|
|
# A chaque itération, writeFile va se réinitialiser
|
|
writeFile=""
|
|
|
|
# A chaque itération récupère dans des variables le nom, prénom et le groupe
|
|
fName=$(echo $line | cut -d "," -f1 )
|
|
lName=$(echo $line | cut -d "," -f2 )
|
|
group=$(echo $line | cut -d "," -f5 )
|
|
login=$(echo $fName | cut -c1)$lName
|
|
login=$(echo $login | tr [:upper:] [:lower:])
|
|
login=$(echo $login | tr -dc [:alnum:])
|
|
|
|
# A chaque itération stocke le mot de passer pour chaque utilisateur dans password
|
|
password=$(tr -dc A-Za-z0-9 </dev/urandom | head -c8; echo)
|
|
|
|
# A chaque itération, ajout des infos ci-dessous dans loginFile
|
|
writeFile="$login;$password;$fName;$lName;$group"
|
|
echo $writeFile >> $loginFile
|
|
done < $file |