Inserer de l'expect dans un script shell

Fermé
samycaz Messages postés 15 Date d'inscription vendredi 15 juin 2012 Statut Membre Dernière intervention 22 juin 2012 - 22 juin 2012 à 14:50
dubcek Messages postés 18744 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 4 septembre 2024 - 22 juin 2012 à 18:04
Bonjour,

je suis actuellement en train de réaliser un script de sauvegarde de configuration d'équipement réseau.
le script fait appelle à un fichier liste.txt d'ou il tire l'adresse ip

je souhaite introduire dans mon script des commandes expect pourtant j'obtient tjrs des erreur dans mon script.
le voici ::

#! /bin/bash


while read IP reste;
do

nom="${line#* }"
expect {
send " copy running-config tftp:\n"
sleep 5
send "$IP\n"
sleep 5
send "${nom// /_}_$(date +'%A-%d-%B-%Y-%H:%m').txt"
sleep 5
send "exit"
send "\r"
interact
exit
}

done < liste.txt

pourtant quand j'essai de lancer le script, il m'ecrit ces erreurs là :

./cobaye.sh: line 11: unexpected EOF while looking for matching ')'
./cobaye.sh: line 28: syntax error: unexpected end of file

quelqu'un aurait une idée pour corriger l'erreur et réussir à lancer mon script et pour inserer correctement mon script??

c un projet important et j'aimerais le résoudre. toute idée est bonne à prendre !!

A voir également:

1 réponse

dubcek Messages postés 18744 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 4 septembre 2024 5 617
Modifié par dubcek le 22/06/2012 à 15:25
hello
une possibilité
#! /bin/bash  
while read IP reste;  
do  
nom="${line#* }"  
cat << EOF | expect -f -  
send " copy running-config tftp:\n"  
sleep 5  
send "$IP\n"  
sleep 5  
send "${nom// /_}_$(date +'%A-%d-%B-%Y-%H:%m').txt"  
sleep 5  
send "exit"  
send "\r"  
interact  
exit  
EOF  
done < liste.txt  
0
samycaz Messages postés 15 Date d'inscription vendredi 15 juin 2012 Statut Membre Dernière intervention 22 juin 2012
22 juin 2012 à 15:42
merci dubcek, comme tjrs tu n'hésite pas à partager tes connaissances.
mais la lorsque je lance le script avec les modifications que tu as apporté, j'ai toujours une erreur tel que :

./plop.sh: line 16: unexpected EOF while looking for matching '"'
./plop.sh: line 23: syntax error: unexpected end of file
la meme qu'au début en gros..??
0
dubcek Messages postés 18744 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 4 septembre 2024 5 617
22 juin 2012 à 16:26
il y a des espaces après le 2ème EOF
les enlever
0
samycaz Messages postés 15 Date d'inscription vendredi 15 juin 2012 Statut Membre Dernière intervention 22 juin 2012
22 juin 2012 à 16:44
sa ne fonctionne toujours pas..
0
dubcek Messages postés 18744 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 4 septembre 2024 5 617
22 juin 2012 à 16:47
même erreur ?
0
samycaz Messages postés 15 Date d'inscription vendredi 15 juin 2012 Statut Membre Dernière intervention 22 juin 2012
22 juin 2012 à 17:35
ne faut-il pas utiliser echo ' avant d'appliquer le send pour les commandes expect??
0