Automatiser une exécution par un script

Résolu/Fermé
Tilk - 25 avril 2007 à 18:53
 Tilk - 27 avril 2007 à 12:09
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

11 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 894
25 avril 2007 à 18:56
Salut,

Faudrait qu'on ait un bout de ton fichier contenant les adresses et les passwords, histoire d'aller droit au but.
;-))
0
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
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 894
26 avril 2007 à 09:36
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 ;-))
0
Merci
j'éssaye de suite ! et je vous tien informé

Tilk
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Jipicy,

Ca marche ! vous etes genial

milles fois merci
Tilk
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 894
26 avril 2007 à 11:42
De rien ;-))
0
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
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 894
26 avril 2007 à 17:42
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"...

;-))
0
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
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 894
26 avril 2007 à 18:19
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)...
0
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
0