script tp04

This commit is contained in:
redouane.assani 2025-02-20 13:23:13 +01:00
parent 3800141d22
commit dc8c0ec55e
3 changed files with 75 additions and 11 deletions

View File

@ -1,13 +1,31 @@
#!/bin/bash
fichier=Users.csv
while read ligne #définit la variable "ligne" comme le contenu de la ligne du fichier en cours de lecture
do
# A chaque itération on stcok le métier dans la variable $métier
metier=$(echo $ligne | cut -d "," -f5)
if [[ $(grep $metier /etc/group) == "" ]] ; then
groupadd $metier
echo "Creasion du groupe $metier"
else
echo "le Groupe $métier existe déjà"
done < $fichier
file='./Users.csv'
while read ligne
do
# A chaque itération, stocker le métier dans $metier
metier=$(echo $ligne | cut -d "," -f5)
# On regarde si les group existe
# tail /etc/group
# Vérification de la présence du groupe Accountant -> ajout de la fonction "Accountant" à $groups
if [[ $(echo $ligne | grep "Accountant") == "" ]] ; then
groupadd accountant
fi
# Vérification de la présence du groupe Management -> ajout de la fonction "Management" à $groups
if [[ $(echo $ligne | grep "Management") == "" ]] ; then
groupadd management
fi
# Vérification de la présence du groupe Production -> ajout de la fonction "Production" à $groups
if [[ $(echo $ligne | grep "Production") == "" ]] ; then
groupadd production
fi
# On regarde si les groups ont été créé
# tail /etc/group
# echo $metier
done < $file

View File

@ -0,0 +1,30 @@
#!/bin/bash
# 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"
# 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
}
# 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"
# 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}"
# 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."

View File

@ -0,0 +1,16 @@
#!/bin/bash
if [ -z "$1" ] ; then
read -p "Erreur: Ecrivez un message " $message
else
message=$1
fi
# Ajout des fichiers modifiers
git add .
# Commit avec le message
git commit -m "$message"
# Push vers le dépot
git push -u https://jeremy.thomas@gitea.lyc-lecastel.fr/redouane.assani/siotp.git