Rechercher : dans
Par :

Rapport erreur_bash et expect

Dernière réponse le 25 mai 2009 à 10:14:16 biscotte.net, le 22 mai 2009 à 13:54:31 
 Signaler ce message aux modérateurs

Bonjour,

je fais appelle à vous car je ne sais pas comment faire un rapport d'erreur suite a des traitements :

j'ai un script expect qui execute sur un certain nombre de commandes cisco sur des switchs. Cependant, je souhaiterais que si l'action n'a pas pu se faire jusqu'au bout quelque soit la raison, il y ait le nom du switch qui soit inséré dans un fichier erreur.txt.

voila ce que j'ai déjà fait :

#!/bin/bash
#
for switch in `cat /home/switch/iplist.txt | awk '{print $1}'`
do /home/commandes.sh $switch
if ???
then `cat /home/switch/iplist.txt | awk '{print $2}'` >>/home/erreur.txt
fi

done


Comme vous pouvez le voir, il me manque que la condition... Pourriez-vous m'aider à la déterminer s'il vous plait?

Merci d'avance.

Biscotte

Configuration: windows XP
debian etch

Meilleures réponses pour « rapport erreur_bash et expect » dans :
Tutoriel : comment interpréter un rapport RSIT Voir Présentation générale Détail des différentes informations données par les rapports Le rapport info.txt Le rapport log.txt Analyse ligne par ligne Identification des infections Explications sur les services Présentation...

1

jipicy, le 22 mai 2009 à 16:10:34

Salut,

if [ "$?" != 0 ]
then ...
fi
$ man woman
Il n'y a pas de page de manuel pour woman.

Répondre à jipicy

2

biscotte.net, le 22 mai 2009 à 16:51:27

Merci Jipicy.
Mais à quelle variable correspond "$?" ?

Cordialement,
Biscotte

Répondre à biscotte.net

3

jipicy, le 22 mai 2009 à 17:02:03

C'est la valeur du code retour de la dernière commande exécutée.
$ man woman
Il n'y a pas de page de manuel pour woman.

Répondre à jipicy

4

biscotte.net, le 22 mai 2009 à 17:04:52

Génial!!! ça veut dire que dans "$?", j'aurais tout les retours de l'execution de mon script expect : commandes.sh??? :D

Répondre à biscotte.net

5

jipicy, le 22 mai 2009 à 17:19:20

Non pas tous, uniquement celui de la dernière commande exécutée. Puis tout dépend de ton script aussi...

Pour qu'on puisse t'aider au mieux il faudrait nous montrer ton script en expliquant ses finalités, parce que là on parle un peu dans le vide ;-(
$ man woman
Il n'y a pas de page de manuel pour woman.

Répondre à jipicy

6

biscotte.net, le 25 mai 2009 à 09:39:36

Tu as raison! je mets tout ça en ligne d'ici la fin de matinée.
Merci pour ton aide.

Répondre à biscotte.net

7

 biscotte.net, le 25 mai 2009 à 10:14:16

Petit récap :

le fichier de démarrage :

#!/bin/bash
#
for switch in `cat /home/switch/iplist.txt | awk '{print $1}'`
do /home/commandes.sh $switch
if ???
then `cat /home/switch/iplist.txt | awk '{print $2}'` >>/home/erreur.txt
fi

done


iplist.txt contient uniquement des adresses IP

et commandes.sh :

#!/usr/bin/expect -f
#
set switch [lindex $argv 0]
spawn ssh user@$switch
expect "#"
expect " # "
send "mdp\r"
expect " # "
send "en\r"
send "mdp2\r"
send "conf t\r"
send "no username user\r"
send "enable secret mdp3\r"
send "no aaa new-mo\r"
send "username userrw privilege 15 secret mdp4\r"
send "username userro privilege 7 secret mdp5\r"
send "aaa new-model\r"
send "aaa authentication login default group radius local\r"
send "aaa authorization console\r"
send "aaa authorization exec default group radius local\r"
send "radius-server host 192.168.0.14 auth-port 1645 acct-port 1646\r"
send "radius-server timeout 3\r"
send "radius-server directed-request\r"
send "radius-server key CiscoRadius\r"
send "radius-server vsa send authentication\r"
send "ip http authentication aaa\r"
send "ip http secure\r"
send "exit\r"
send "copy running-config startup-config\r"
send "\r"
send "\r"
send "exit\r"
expect "closed"
exit
expect eof

Merci de votre aide

Répondre à biscotte.net