diff --git a/sio2/sisr/20-python/comptes.txt b/sio2/sisr/20-python/comptes.txt index 710b2f9..2ec32cf 100644 --- a/sio2/sisr/20-python/comptes.txt +++ b/sio2/sisr/20-python/comptes.txt @@ -1,3 +1,3 @@ -adupont:Albert Dupont -jduroy:Jeannette Duroy -mdurand:Marcelle Durand +t1:test1 +t2:test2 +t3:test3 diff --git a/sio2/sisr/20-python/exo4-1.py b/sio2/sisr/20-python/exo4-1.py new file mode 100644 index 0000000..afa3af7 --- /dev/null +++ b/sio2/sisr/20-python/exo4-1.py @@ -0,0 +1,34 @@ +#!/usr/bin/python3 +# tips lancement : sudo python exo4-1.py comptes.txt +import os +import sys +import subprocess +# Fonction pour créer un utilisateur avec le login et le nom complet +def create_user(login, full_name): + os.system(f'sudo useradd -m -c "{full_name}" -s /bin/bash {login}') + print(f"Utilisateur {login} créé avec succès.") + res=subprocess.run(["pwgen", "7", "1"],stdout=subprocess.PIPE) + pw = res.stdout.decode('utf8').rstrip() + os.system(f"echo {login}:{pw}|chpasswd") + os.system(f"echo {login}:{pw} >> users.txt.pw") + print (pw) + +# Fonction principale pour lire le fichier et créer les utilisateurs +def main(filename): + try: + with open(filename, 'r') as file: + for line in file: + if line.strip(): + login, full_name = map(str.strip, line.split(':')) + create_user(login, full_name) + except FileNotFoundError: + print(f"Le fichier {filename} n'a pas été trouvé.") + except Exception as e: + print(f"Erreur lors de la lecture du fichier {filename}: {e}") + +# Point d'entrée du script +if __name__ == "__main__": + if len(sys.argv) != 2: + print("Usage: python exo4-1.py ") + else: + main(sys.argv[1]) diff --git a/sio2/sisr/20-python/script1.sh b/sio2/sisr/20-python/script1.sh new file mode 100644 index 0000000..3ee5e75 --- /dev/null +++ b/sio2/sisr/20-python/script1.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +pwgen 7 1 > + + diff --git a/sio2/sisr/20-python/users.txt.pw b/sio2/sisr/20-python/users.txt.pw new file mode 100644 index 0000000..f43737b --- /dev/null +++ b/sio2/sisr/20-python/users.txt.pw @@ -0,0 +1,3 @@ +t1:EeJ4gie +t2:dei5Boo +t3:ca1Jaig