script_Createuser
This commit is contained in:
parent
dc8c0ec55e
commit
01c02cebba
@ -1,30 +1,24 @@
|
||||
#!/bin/bash
|
||||
fichier=Users.csv
|
||||
fichier_a_ecrire=./login.csv
|
||||
rm $fichier_a_ecrire 2> /dev/null
|
||||
touch $fichier_a_ecrire
|
||||
|
||||
# Fichier d'entrée contenant les informations des utilisateurs
|
||||
input_file="users.csv"
|
||||
# Fichier de sortie contenant les logins générés
|
||||
output_file="logins.csv"
|
||||
while read ligne
|
||||
do
|
||||
aecrie=""
|
||||
last_name=$(echo $ligne | cut -d "," -f2) # récupération du nom a chaque ligne
|
||||
first_name=$(echo $ligne | cut -d "," -f1) # récupération du prénom a chaque ligne
|
||||
group=$(echo $ligne | cut -d "," -f5) # recupération du groupe a chaque ligne
|
||||
login=$(echo $first_name | cut -c1)$last_name # creation d'un login
|
||||
login=$(echo $login | tr [:upper:] [:lower:]) #passage de toute les lettre du nom et prenom en minuscule
|
||||
login=$(echo $login | tr -dc [:alnum:]) #Prise en compte des caractere uniquement alphabéticonumérique
|
||||
password=$(echo $RANDOM | md5sum | head -c8) #creation d'un mot de passe
|
||||
|
||||
# Fonction pour générer un mot de passe aléatoire
|
||||
generate_password() {
|
||||
# Générer un mot de passe aléatoire de 8 caractères alphanumériques
|
||||
# Utilise /dev/urandom et tr pour choisir uniquement des caractères alphanumériques
|
||||
< /dev/urandom tr -dc 'A-Za-z0-9' | head -c 8
|
||||
}
|
||||
aecrie="$login;$password;$first_name;$last_name;$group"
|
||||
|
||||
# Créer un fichier de sortie et ajouter l'en-tête
|
||||
echo "Nom d'utilisateur,Prénom,Nom,Mot de passe,Groupe" > "$output_file"
|
||||
echo $aecrie >> $fichier_a_ecrire
|
||||
|
||||
# Lire le fichier d'entrée ligne par ligne
|
||||
while IFS=' ' read -r firstname lastname group; do
|
||||
# Générer le nom d'utilisateur en prenant l'initiale du prénom et le nom, tout en minuscules
|
||||
username="${firstname:0:1}${lastname}"
|
||||
done < $fichier
|
||||
|
||||
# Générer un mot de passe aléatoire
|
||||
password=$(generate_password)
|
||||
|
||||
# Ajouter la ligne au fichier de sortie
|
||||
echo "$username,$firstname,$lastname,$password,$group" >> "$output_file"
|
||||
done < "$input_file"
|
||||
|
||||
echo "Fichier logins.csv généré avec succès."
|
||||
echo "le fichier login.csv a bien été créer"
|
20
sisr1/TP04-Bases-d'administration/createUsers.sh
Normal file
20
sisr1/TP04-Bases-d'administration/createUsers.sh
Normal file
@ -0,0 +1,20 @@
|
||||
file=./login.csv
|
||||
|
||||
|
||||
while read ligne
|
||||
do
|
||||
username=$(echo $ligne | cut -d ";" -f1)
|
||||
useradd -m -s "/bin/bash" $username
|
||||
|
||||
group=$(echo $ligne | cut -d ";" -f5)
|
||||
usermod -aG $group $username
|
||||
|
||||
password=$(echo $ligne | cut -d ";" -f2)
|
||||
|
||||
echo $username:$password | chpasswd
|
||||
|
||||
chown $username:$username /hom/$username
|
||||
|
||||
done <$fichier
|
||||
|
||||
|
@ -13,4 +13,4 @@ git add .
|
||||
git commit -m "$message"
|
||||
|
||||
# Push vers le dépot
|
||||
git push -u https://jeremy.thomas@gitea.lyc-lecastel.fr/redouane.assani/siotp.git
|
||||
git push -u https://reddouane.assani@gitea.lyc-lecastel.fr/redouane.assani/siotp.git
|
30
sisr1/TP04-Bases-d'administration/login.csv
Normal file
30
sisr1/TP04-Bases-d'administration/login.csv
Normal file
@ -0,0 +1,30 @@
|
||||
eberthelmot;b67e86f8;Ermengarde;Berthelmot;Accountant
|
||||
kbunker;c96ce0e8;Kassi;Bunker;Production
|
||||
mmccallum;8d3df113;Moises;McCallum;Production
|
||||
plune;719198af;Patrizio;Lune;Accountant
|
||||
beverix;c914708a;Blanch;Everix;Accountant
|
||||
skibbel;5eab5ab7;Stafani;Kibbel;Production
|
||||
imosdell;f6c73e14;Ignacius;Mosdell;Management
|
||||
jwallerbridge;aeca1ecf;Jeana;Waller-Bridge;Management
|
||||
edressel;5679fb79;Elroy;Dressel;Production
|
||||
tstrettell;0b218424;Thea;Strettell;Production
|
||||
sinsoll;02b743ca;Solomon;Insoll;Accountant
|
||||
cfeedome;32405639;Carri;Feedome;Accountant
|
||||
pchetwind;a75beebe;Padraic;Chetwind;Management
|
||||
sdugo;4b4f98e3;Solly;D'Ugo;Production
|
||||
kmaccostigan;0db1473c;Konstanze;MacCostigan;Accountant
|
||||
rpowlesland;c0e9b6c6;Roxane;Powlesland;Management
|
||||
okennealy;155f3674;Orelle;Kennealy;Production
|
||||
ssoitoux;323f6ff8;Sukey;Soitoux;Production
|
||||
nsyce;82c0f357;Nelli;Syce;Production
|
||||
cshillam;0575710e;Clarisse;Shillam;Production
|
||||
cgueny;fad38e18;Carin;Gueny;Management
|
||||
driepel;c7482c14;Donny;Riepel;Production
|
||||
dralfe;a053e245;Daniella;Ralfe;Production
|
||||
lclynmans;5865f85c;Lexy;Clynmans;Production
|
||||
gadamthwaite;5d8660f7;Gardiner;Adamthwaite;Production
|
||||
wlippett;7d65808a;Woodman;Lippett;Production
|
||||
nmunnion;d353774c;Nadya;Munnion;Production
|
||||
lhabershon;1594623a;Llewellyn;Habershon;Production
|
||||
igreatrex;f6ed5356;Isaak;Greatrex;Production
|
||||
dfrostdyke;d8eb0743;Darill;Frostdyke;Production
|
|
Loading…
x
Reference in New Issue
Block a user