bonjour,

voila j'ai un script pour créer des utilisateurs avec un fichier rempli en .txt

le fichier comptes.txt est fait comme ceci
login mdp groupe
les variables sont les suivantes :
$1 login
$2 pour le mot de passe
$3 pour le groupe

voici le script
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/bash 
IFS=$' '; 
cat comptes.txt | 
{ 
while read ligne; do 
set ${ligne}; 
echo "login:${1} mot de passe:${2} groupe:${3}"; 
useradd ${1} -d /var/home/${3} -s /bin/false; 
usermod -g ${3} ${1}; 
echo ${1}:${2} | chpasswd 
done; 
}

après divers tests, tous fonctionne
le script s'exécute sans messages d'erreurs
la ligne echo login... me permet de vérifier que les variables sont exactes

les questions que je me pose :

les utilisateurs créés via le script sont récupérés dans un fichier texte avec deux noms pour tester

test1, test2 et deux groupes :groupe1,groupe2

test1 dans le groupe1, test2 dans le groupe2
les utilisateurs sont créés, il apparaissent dans /etc/passwd
quand je fais la commande "groups test1" je reçois la réponse test1 : groupe1
et pour test2 groupe2. donc pas de soucis

mais si j'édite /etc/group je devrais avoir

groupe1: x :102:pascal,pierre,test1
groupe2: x :103:sylvain,alex,test2

mais les utilisateurs test1 et 2 ne se rajoute pas.

est-ce normal ?

pour l'instant cela fonctionne mais j'aimerais comprendre