Script bash

Bonjour à tous!

Voilà je suis en train de déployer une serveur ldap(openldap et samba en PDC) qui fonctionne à merveille. Cependant, j’aimerai automatisé l’ajout d’utilisateur. En fait je veux faire un script que aille chercher les infos (nom, prénom, groupe et login) dans un fichier texte et grâce à une boucle qui remplisse la base ldap. Je sais que l’on peut exécuter une commande (avec des variables) à l’intérieur d’un script mais je suis perdu pour le reste

Voici mon fichier texte et les variable associées:

$prenom:*$nom:$login:$groupe
arnaud:damour:adamour:789
benoit:vallet:bvallet:542
alexandre:rendour:arendour:456
toto:tutu:ttutu:254

Voici la commande qui sera à exécuter dans le script une fois les infos récupérées dans les variables:

Exemple:smbldap-useradd -a -m -P -A 1 -g 788 -N Gaetan -S Rabier g.rabier

commande avec variable: smbldap-useradd -a -m -P -A 1 -g $groupe -N $prenom -S $nom $login

Quelqu’un pourrait-il m’aider?

Merci beaucoup

Arnaud

Bonjour,

Ceci devrait pouvoir t’aider :

En supposant que la premiere ligne “$prenom:*$nom:$login:$groupe” n’existe pas.

en retirant l’option -P (qui demande de taper le mot de passe) cela passe très bien merci beaucoup!

serait-il possible dans la ligne de commande d’afficher une ligne à chaque utilisateur créer et qui retourne le nom de celui-ci

exemple : utilisateur $nom $prénom a été créé avec succès!

Merci encore pour votre aide !

Arnaud

Je suis pas un fan du “| sh -”

Tu peut faire ainsi :

Par contre il t’afficheras le message de succès même en cas d’échec…
J’arrive pas a tester la valeur de retour (connais pas assez awk).

Edit: plus bourrin encore et là tu n’a le message que si la commande a marché.

Par contre il faut gawk donc ça marcheras sur GNU/Linux pour les BSD et les solaris je ne promet rien.