modifié : sio2/sisr/20-python/comptes.txt

nouveau fichier : sio2/sisr/20-python/exo4-1.py
	nouveau fichier : sio2/sisr/20-python/script1.sh
	nouveau fichier : sio2/sisr/20-python/users.txt.pw
This commit is contained in:
root 2024-10-04 09:32:43 +02:00
parent 46bf69ee87
commit 8ba5d192d8
4 changed files with 45 additions and 3 deletions

View File

@ -1,3 +1,3 @@
adupont:Albert Dupont
jduroy:Jeannette Duroy
mdurand:Marcelle Durand
t1:test1
t2:test2
t3:test3

View File

@ -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 <nom_du_fichier>")
else:
main(sys.argv[1])

View File

@ -0,0 +1,5 @@
#!/bin/bash
pwgen 7 1 >

View File

@ -0,0 +1,3 @@
t1:EeJ4gie
t2:dei5Boo
t3:ca1Jaig