Bonjour,

A partir d'un serveur HP UX (11.11) je dois me connecter à distance via telnet sur une machine (Station Windows XP)

Sur celle-ci je dois lister des fichiers de log compris entre deux dates.
Les copier dans une autre répertoire (accessible en FTP)
Les zipper
Les rapatrier en FTP sur le serveur

Ces opérations étant assez lourdes et ayant l'opération a réaliser sur 45 Stations Windows je souhaite faire cela avec un script.

Pour le moment j'ai réalisé un script Except qui me permet de me connecter sur la machine voulue et de lister la totalité fichiers de logs

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
37
38
39
40
 
#!/usr/local/bin/expect -f
 
 proc connect {user passw} {
   expect {
     timeout {
       puts "telnet timed out"
       exit 2
     }
     -re "(?i)login" {
       send -- "$user\r"
       exp_continue
     }
     -re "(?i)password" {
       #sleep 1
       send -- "$passw\r"
       return 0
     }
   }
   return 1
 }; #end of telnet_login
 
 #read the input parameters
 set user Administrator
 set passw *******
 set host [lindex $argv 0]
 set ne [lindex $argv 1]
 set chain [lindex $argv 2]
 
 #Start Telnet connection
 spawn telnet $host
 
 connect $user $passw
 expect "C:\Documents and Settings\Administrator>"
 send "cd C:\\Program Files\\MSOS\\$ne\\$chain\r"
 send "ls\r"
 expect "C:\Program Files\MSOS\*"
 send "exit\r"
 expect eof
 exit 0
et je lance le script comme cela:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
./getlistlogcs.exp Adr_IP Nom_eqp chaine > liste_log.log
Chaque fichier de log a un nom sous la forme:
Nom_eqp_chaine_YY-mm_dd_HH-MM-SS.LOG

Exemple:
H29_CSA_10-08-22-00-12_00.LOG
H29_CSA_10-08-23-00-06_00.LOG
H29_CSA_10-08-24-03-11_00.LOG

Mais à partir de là, je coince dans le faite que je peux faire un script en perl ou autre qui va m'extraire les fichiers voulus (ceux générés entre mes deux dates) mais je ne sais pas du tout comment reprendre cette nouvelle liste dans un script Expect afin de les copier puis zipper.

Pour ajouter de la difficulté, sur mon serveur HP, j'ai bien perl, mais pas le module Expect, ni la possibilité de l'installer.

Voilà, si quelqu'un a une idée...