Shell : réponse automatisée à [y/n]

Résolu/Fermé
nummix Messages postés 3 Date d'inscription vendredi 3 février 2012 Statut Membre Dernière intervention 4 février 2012 - 3 févr. 2012 à 17:55
nummi Messages postés 12 Date d'inscription samedi 23 août 2008 Statut Membre Dernière intervention 2 juillet 2012 - 2 juil. 2012 à 16:01
Bonjour,

Je suis en train d'essayer d'automatiser des manipulations sous Debian (6.0.3) en ligne de commande. J'ai créé un script Shell, appelé par Cron (avec les permissions de root), qui permet la création automatique d'un utilisateur dans openVPN. (en gros)

pour ceux qui connaissent, à la commande (avec $1 étant le nom de d'utilisateur):
./build-key $1 

je dois appuyer 5 fois sur entrer, jusque là pas de soucis ca marche, mais après j'ai 2 questions ([y/n]) pour savoir si je souhaite créer des certificats et les signer. Et je dois répondre y pour que tout marche correctement...

Avez-vous une idée de comment indiquer à mon script shell comme afficher (et valider) les 2 réponses "y" après avoir fait 5 fois "enter" pour valider.

Merci d'avance pour vos réponses !
Cordialement
Nummix
A voir également:

2 réponses

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 419
Modifié par zipe31 le 3/02/2012 à 18:55
Salut,

Avec un fichier de réponses ;-))

$ cat foo.sh  
#! /bin/bash 

i=1 

echo "Le paramètre en entrée est : ${1}" 
echo 

while [ "${i}" -le 5 ] 
do 
read -s -n1 -p "Appuyez sur une touche..." touche 
echo "Entrée ${i}" 
((i++)) 
done 

echo 
read -p "Voulez-vous continuez y/n ? " one 
echo "Réponse : ${one}" 
read -p "Voulez-vous continuez y/n ? " two 
echo "Réponse : ${two}" 
echo 
echo "Fin" 

$ cat plop # Le fichier de réponse avec 5 lignes vides puis les  2 réponses  





y 
n 

$ ./foo.sh blabla < plop # Exécution avec un paramètre plus le fichier de réponses  
Le paramètre en entrée est : blabla 

Entrée 1 
Entrée 2 
Entrée 3 
Entrée 4 
Entrée 5 

Réponse : y 
Réponse : n 

Fin 

$

Zen my nuggets ;-)
Faites un geste pour l'environnement, fermez vos fenêtres et adoptez un manchot.
2
nummix Messages postés 3 Date d'inscription vendredi 3 février 2012 Statut Membre Dernière intervention 4 février 2012
4 févr. 2012 à 19:34
Bonjour,

Bon j'ai réussi à mettre tout en place, le seul soucis c'est que maintenant j'ai bien mes 5 lignes qui se valident correctement mais lorsqu'il me pose la question "finale", ou je dois rentrer [y/n] pour valider la signature du certificat, il ne prend pas en compte le y, il me renvoie une erreur :
Sign the certificate? [y/n]:CERTIFICATE WILL NOT BE CERTIFIED: I/O error


Y a t-il une proctection ou quelque chose dans le genre ? Tu aurais une une diée ?
Merci pour ton aide.

Cordialement
Nummix
0
reneca41 Messages postés 2 Date d'inscription mardi 15 mai 2012 Statut Membre Dernière intervention 15 mai 2012
15 mai 2012 à 20:31
Bonjour,

Pour résoudre votre problème il suffit d'éditer votre fichier build-key, et remplacer --interact par --batch, pour que la validation ne provienne pas d'une touche du clavier.

cordialement

Renéca
0
nummi Messages postés 12 Date d'inscription samedi 23 août 2008 Statut Membre Dernière intervention 2 juillet 2012 1
2 juil. 2012 à 16:01
Bonjour,

J'ai pas eu le temps de remercier, mais c'est exactement ce dont j'avais besoin, merci beaucoup :D !!!

Cordialement
0
nummix Messages postés 3 Date d'inscription vendredi 3 février 2012 Statut Membre Dernière intervention 4 février 2012
4 févr. 2012 à 18:52
Super merci c'est exactement ce qu'il me fallait :D !!
0