Automatiser une exécution par un script

Résolu
Bsoir à tous !
je fais mes premiers pas en sript. et je voudrais exécuter la commande suivante automatiquement
"./vadduser email_address [passwd]" qui permet de créer des adresses email sous qmail:
email_address est de la forme test@domain.ext
[passwd] est le mot de passe du compte correspondant

cette commande je la fais bien manuelement mais ayant plus de 200 comptes email à créer, je voudrais pouvoir écrire un script qui lit les comptes à créer dans un fichier donné avec les mot de passe et les crée automatiquement

SVP kel k'1 peut il m'aider à le realiser ?
Merci
Tilk
Configuration: Windows XP
Opera 8.52

11 réponses

  1. Merci Jipicy!

    je me suis inspiré de ce ke vous avez envoyé là ! et j'ai peu avoir ce ke je voulais !
    une fois de plus merci !

    Tilk
    1. Modérateur
      Inspires-toi de ça :
      [jp@MDK tmpfs]$ cat foo.txt
      toto
      tata
      tutu
      titi
      
      [jp@MDK tmpfs]$ cat bar.txt
      mp_toto
      mp_tata
      mp_tutu
      mp_titi
      
      [jp@MDK tmpfs]$ cat tilk.sh
      #! /bin/bash
      
      while read line
      do
      echo -e "$line \c" >> plop
      grep "$line" bar.txt >> plop
      done < foo.txt
      
      [jp@MDK tmpfs]$ sh tilk.sh
      
      [jp@MDK tmpfs]$ cat plop
      toto mp_toto
      tata mp_tata
      tutu mp_tutu
      titi mp_titi
      
      [jp@MDK tmpfs]$
      En fait c'est la commande externe "echo" qu'il faut employer avec son switch "-e" et le paramètre "\c" qui empêche le saut de ligne final (ne pas oublier de mettre un espace avant sous peine de voir les noms et les mots de passe collés)...
      1. le fichier d'entrée contient les information texte du genre

        tata
        toto
        titi

        la commande vuser info prend pr chaque element du fichier ce qui donne : .vuserinfo toto@domain.ext
        cette commande avec l'option specifié renvoi son mot de passe
        ce qui fait que j'ai ceci
        tata
        mot_de_passe_tata
        toto
        mot_de_passe_toto

        mais moi je voudrais plutot avoir ca comme ceci
        tata mot_de_passe_tata
        toto mot_de_passe_toto

        et envoyer ca dans un fichier text

        Merci
        Tilk
        1. Modérateur
          Il me faut davantage de données, comme un exemple du fichier d'entrée, ce qu'envoie le traitement en sortie et ce qui est attendu réellement en sortie pour envoie à "vuserinfo"...

          ;-))
          1. s'il vs plait Jipicy un autre petit probleme

            j'ai le script suivant
            #
            while read line do set $line
            echo $line; (affiche la ligne dans le fichier )
            ./vuserinfo -C "$1"@domain.ext (traite et renvoi la reponse)
            done < text.txt
            #

            ceci me renvoi à l'écran deux mots (informations) mais ces informations ne sont pas sur la meme ligne

            comment faire pour les avoir sur la meme ligne ?

            Merci
            1. Modérateur
              Re-
              while read line; do set $(echo $line); echo "$1 $2"; done < fich.txt
              En remplaçant la commande "echo $1 $2" par la commande appropriée ;-))
              1. Bjr jipicy,

                le fichier en question est un fichier texte tout simplement mais nous avons deux possibilités
                1- soit les éléménts dans le fichier sont ainsi qu'il suit
                mail_1 passwd_1
                mail_2 passwd_2
                . . .
                mail_n passwd_n

                2- soit de la forme
                mail_1@domain.ext passwd_1
                mail_2@domain.ext passwd_2
                ...
                mail_n@domain.ext passwd_n

                ou je vous laisse le soin de me proposer meilleur moyen pour arriver à mes fins

                Merci encore !
                Tilk
                1. Modérateur
                  Salut,

                  Faudrait qu'on ait un bout de ton fichier contenant les adresses et les passwords, histoire d'aller droit au but.
                  ;-))