IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

script shell bash


Sujet :

Linux

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 2
    Points : 2
    Points
    2
    Par défaut script shell 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:cozoki:bcozoki:542
    alexandre:munipols:amunipolis: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

  2. #2
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 46
    Points : 37
    Points
    37
    Par défaut
    Bjr,
    Version simple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    while read ligne
      do
         prenom=$(cut -d ':' -f1 <<< "$ligne")
         nom=$(cut -d ':' -f2 <<< "$ligne")
         login=$(cut -d ':' -f3 <<< "$ligne")
         groupe=$(cut -d ':' -f4 <<< "$ligne")
         smbldap-useradd -a -m -P -A 1 -g "$groupe" -N "$prenom" -S "$nom" "$login"
      done < fichier.txt
    En un peu plus ... fun !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    while read ligne
      do
         eval $(awk -F: '{print "prenom=\"" $1 "\" nom=\"" $2 "\" login=\"" $3 "\" groupe=\"" $4 "\""}' <<< "$ligne")
         smbldap-useradd -a -m -P -A 1 -g "$groupe" -N "$prenom" -S "$nom" "$login"
      done < fichier.txt

  3. #3
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 584
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 584
    Points : 19 462
    Points
    19 462
    Par défaut
    d'autres réponses ici : script shell bash

Discussions similaires

  1. Script Shell bash pour sauvegarder
    Par lolilol59 dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 17/04/2014, 13h05
  2. Script Shell Bash
    Par kreuk801 dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 12/01/2011, 15h01
  3. script shell bash
    Par arnaud9742 dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 26/07/2010, 12h59
  4. Script , Shell , Batch , Bash?
    Par A_B dans le forum Windows XP
    Réponses: 8
    Dernier message: 05/06/2007, 21h23
  5. Script Shell Bash
    Par kolfred dans le forum Linux
    Réponses: 4
    Dernier message: 06/10/2006, 12h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo