Expect - récupérer la date

Résolu
Bonjour,

J'ai un script qui me permet de sauvegarder mes confs de switchs automatiquement :

#!/usr/bin/expect -f

set type [lindex $argv 0]
set IP [lindex $argv 1]
set name [lindex $argv 2]
set user [lindex $argv 3]
set password [lindex $argv 4]

if {"$type" == "nortel470"} {
spawn telnet $IP
expect "Enter Ctrl-Y to begin."
send "\031"
expect "Enter Password:"
send "$password\r"
expect "IP Configuration/Setup..."
send "C"
expect "#"
send "copy running-config tftp address @IP filename $name-config\r"
expect "#"
send "exit"
}

le script récupère tous ces arguments à partir d'un fichier txt ou sont rentrés tous mes équipements réseaux.

Je voudrais pouvoir placer la date lorsque je récupère ma config en tftp du style :
$name-$madate-config

avec madate = `date +%m%Y`

mais bon ca, ca jne marche pas sous expect !! comment puis-je faire ???

merci de votre aide à tous

++
David
Configuration: Red Hat 5

4 réponses

  • Votes
  • Date
  • Date décroissante
  1. set madate [timestamp -format "%m%Y"]
    ;))
    merci !!!
    1. Modérateur
      De rien et merci à toi aussi d'avoir posté la solution ;-))
  2. Modérateur
    Regarde du côté de "timestamp" (man execpt), y'a peut être un truc à faire avec ;-))

    Je ne sais plus si je t'avais donné ces liens :
    http://www.cotse.com/dlf/man/expect/index.htm
    http://www.oreilly.com/catalog/expect/chapter/ch03.html
    1. si j'avais essayé ca et ca marche de la boule

      par contre comme expliqué dans le message, le script recupere tous ces arguments dans un fichier texte

      si je place l'argument $(date +%m%Y) ou `date +%m%Y` et que je recupere dans mon script

      set madate [lindex argv 5] => il me recupere directement $(date +%m%Y) sans me l'exécuter...logique......

      comment puis-je faire ca ??

      merci d'avance
      merci jipicy pour la rapidité de ta réponse
      1. Modérateur
        Salut,

        T'as essayé de passer la date avec les autres paramètres ?

        Un truc du style :
        ./monscript_expect type IP name user password $(date +%m%Y)
        ;-))