Batch et tâches planifiées

Résolu
Bonjour,
j'ai créer un petit batch qui me permet de récupérer le log d'une de sauvegarde d'un serveur, d'extraire les 10 dernières lignes et de me les envoyer par mail.
voici le code :

del operations_log.utx (supprime l'ancien log)
WinSCP.exe /console /command "option batch on" "open user:MDP@IPServeur" "cd /var/vmware/datarecovery" "get operations_log.utx c:\Bat\" "exit" (ouvre winSCP en mode console, ouvre une session SSH sur IPServeur avec le nom user et le mot de passe MDP, ouvre le dossier /var/vmware/datarecovery, copie le fichier operations_log.utx dans c:\Bat\ et ferme winSPC)
@echo off
set fichier=operations_log.utx
set nombre=10
for /f %%a in ('find /v /c "" ^< %fichier%') do set /a lignes=%%a
setlocal enableDelayedExpansion
set /a l2=!lignes! -%nombre%
more /e +%l2% %fichier% > RapportVSphere.txt (le code entre @echo off et ici permet d'extraire les 10 dernière ligne de mon log et les mettre dans un fichier RapportVSphere.txt )
blat RapportVSphere.txt -to MonMail@FAI.com (permet d'envoyé le fichier RapportVSphere.txt par mail à MonMail@FAI.com)

voila, jusque la, tout va bien. lorsque j'exécute mon .bat, tout est ok. Mon problème est lorsque je le fait en tache planifiée. lorsque je l'exécute, il me supprime l'ancien log, ne récupère pas le nouveaux et m'envoie un mail vide (normal, il y a pas le nouveaux log). il doit y avoir un problème d'exécution de winSPC avec les taches planifiées... quelqu'un aurais une suggestion pour résoudre ce problème?
Merci.
Configuration: Windows Vista
Firefox 3.5.3
Microsoft Office Outlook 2003
Kaspersky Anti-Virus 2009
Windows live messenger 2009
Messenger Plus! Live 4.81.0.358

8 réponses

  1. j'ai résolue le problème, c'est à cause du "option batch on". en effet, avec cette option, le certificat SSH n'est pas accepter, ce qui termine la connexion. le problème ne ce faisait pas avec ma session car je m'était déjà logger sur le serveur, accepter et enregistrer le certificat. Merci une fois de plus de ton aide dubcek (et les autres ^^)
    1. Contributeur
      au début du .bat mais si tu es dans C:\bat ça devrait être ok
      faudrait mettre des traces pour suivre ce que fait winscp
      est ce que winscp utilise des variables d'environnement qui manquent en tâche planifiée ?
      1. Je ne comprends pas ou le mettre le cd c:\Bat, dans le .bat ou le fichier_commande? (le .bat je suppose, mais à quel endroit?)
        Le .bat est déjà exécuter dans c:\bat
        1. j'ai essayé en les mettant dans un autre fichier, toujours le même problème.
          1. Contributeur
            met dans ton script
            cd c:\Bat
            pour être sûr d'être dans le dossier où est copié le fichier

            essaye en mettant les commandes winscp dans un fichier et
            winscp.exe /console /script=fichier_commande
            1. j'ai essayé :
              Impossible d'acc‚der au fichier C:\Bat\operations_log.utx
              Sending RapportVSphere.txt to mail@mail.fr
              Login name is mail@mail.fr
              c'est normal qu'il n'y accède pas vu que winSCP ne récupère pas le fichier... après je sais pas comment avoir le log de winSCP
              1. Contributeur
                hello
                faire un essai simple avec winscp en tâche planifiée
                mettre au début du scriot
                echo on
                et exécuter le script en récupérant les sorties et les erreurs (2>&1) pour voir ce qu'il fait
                nom_du_scipt.bat > C:\log 2>&1