Script backup configuration
Bonsoir,
Voila j'ai chercher sur le site pour pouvoir m'aider (d'ailleur j'ai avancé grace a un autre sujet) parce que j'ai un script à réaliser pour mon entreprise!
Ce script aura pour but de se connecter sur mes switchs en telnet (utilisation du module net::telnet), et de faire une copie de la configuration des switchs, le tout sera envoyé ver mon serveur TFTP! Pour les connections aux switchs j'ai un fichier .txt avec sur la meme ligne le :
Donc le contenue je le remet dans un tableau pour pouvoir les réutiliser!
Donc j'ai encore quelques problèmes pour faire les séparations sinon sa marche!!
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
my $base;
$base= "/script_backup/database_switch.txt";
open (BASE,"$base") or die "can't open file\n";
my $Ligne;
my @tab;
while ($Ligne=<BASE>)
{
my ($nom, $ip, $login, $mdp);
# print $Ligne."\n";
# Condition en expression reguliere d'une ligne du fichier txt sous la forme
# nom ip login mdp
if($Ligne =~ /(.*)\s(.*)\s(.*)\s(.*)/) # J'ai un PB ici je pense! ne diserne pas l'espace entre le nom et IP........
{
push @tab, $1, $2, $3, $4;
$nom = $1;
$ip = $2;
$login = $3;
$mdp = $4;
print ("nom=$nom\n"); # test
print ("ip=$ip\n"); # test
print ("login=$login\n"); # test
print ("mdp=$mdp\n"); # test
# print ("$nom $ip $login $mdp"); # test
}
else
{
print("Erreur lecture de ligne : $.\n");
}
}
close (BASE); |
Le probleme ici etant que je resors pas dans le bonne ordre le contenue du tableau
j'obtiens pour la 1er ligne:
Code:
1 2 3 4 5
|
nom=SWO1 10.42.78.1
ip=user1
login=mdp1
mdp= |
Mais le gros problème c'est la connexion en telnet...donc j'aurais besoin de vous pour m'aider!!
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
#!/usr/bin/perl
# strict demande de definir les variables
use strict;
# warnings permet d'avoir des messages d'erreurs
use warnings;
# Module pour la connection Telnet
use Net::Telnet qw(TELOPT_TTYPE); #qw(TELOPT_TTYPE) sert a quoi???
use IO::Handle; # a quoi sa sert sa??? je l'ai mis parceque j'ai un modele
my $switch_ip = X.X.X.X; # je met juste ca comme j'ai pas mis de MDP ni login
my $switch_port = 12; # je met le n° port sur lequel je suis brancher
my $telnet_session = new Net::Telnet (
'Host' => $switch_ip,
'Port' => $switch_port,
'Errmode' => 'return',
'Timeout' => 20,); |
Merci d'avance!