Ciao a tutti,
sono un super-novizio nell'utilizzo di perl e ho bisogno di una mano.
Sono riuscito a realizzare il seg. script che mi permette di fare telnet su un elenco di router ed eseguire alcuni comandi su di essi, salvando poi l'output in un file. Il problema nasce quando un router non è raggiungibile: lo script si blocca (devo fare manualmente ctrl+c per farlo proseguire):
DIR=/home/utente/log # Aggiornare il path
if [ ! -e $DIR ]
then
mkdir $DIR
fi
# Tag specification: mmddhhmm
DATE=`date +'%m%d'`
TIME=`date +'%H%M'`
TAG=$DATE$TIME
while read riga # Per tutte le righe del file di input...
do
echo "$riga" # Visualizza la riga.
# Collect data from the router
(echo "utente";\
echo "password";\
echo "ena";\
echo "password";\
echo "primo comando su router";\
echo "secondo comando su router";\
echo "exit";\
sleep 3)| telnet "$riga" >> $DIR/log.$TAG 2>$DIR/log.$TAG.txt
done
Mi servirebbe poter mandare in automatico il segnale "CTRL+C", dopo aver aspettato un certo numero di secondi...
E' fattibile? Se si, come?
Grazie a tutti

Rispondi quotando