[Résolu] lire le resultat d'un batch

Une difficulté, une précision posez vos questions

Modérateur : WIN32-[GG]

Répondre
nabli

[Résolu] lire le resultat d'un batch

Message par nabli »

Bonjours
je developpe une application en vb qui fait la conversion d'un fichier vers un format spécifique pour une machine
Alors pour réaliser l'envoie en mode dos ftp ,j'ai réalisé un script "fichier.bat"
mon probleme et que je veux transmettre le resultat dans un fichier text ,pour que je puisse le lire et traiter le resultat

merci
Sylvain

Re: lire le resultat d'un batch

Message par Sylvain »

Tu rajoutes l'opérateur ">nom_du_fichier.log" pour créer un fichier log,

">>" si tu veux continuer ton fichier log lors d'autres commandes.
nabli

Re: lire le resultat d'un batch

Message par nabli »

salut
merci pour l'aide c'est bien marché
j'ai une autre question
comment je peux faire un batch faisant appel de l'invite dos à ftp.exe et faire une connexion avec un hote et l'envoie d'un fichier ?
exemple open 192.168.0.1
put fichier.txt

j'ai essayer mais la fenetre dos se bloque à "ftp>"
merci
Avatar du membre
flox
Administrateur du site
Messages : 158
Enregistré le : 18 janv. 2008 22:05

Re: lire le resultat d'un batch

Message par flox »

Salut Nabli,
Pour la connexion en .bat sur un FTP voila la marche à suivre:

1- crée un fichier c:\temp.txt contenant:

Code : Tout sélectionner

login
password
cd repertoire
put c:\temp.txt
quit
2- crée un fichier c:\test.bat contenant:

Code : Tout sélectionner

ftp -s:c:\temp.txt 192.168.0.1
pause
3- Execute ton script

Voila normalement ça devrait marcher, si tu veut plus d'info sur les commandes ftp regarde sur la page FTP

@+
med

Re: lire le resultat d'un batch

Message par med »

Salut flox.
j'ai appliquer les instructions que j'ai recu ,ils sont fonctionnels
mais le script fonctionne seulement si le fichier texte et dans c:\ ou d:\ ...
alors s'il est dans ex:d:\dossier\fichier.txt le script ne marche pas
comment resoudre cette etape?
merci
Avatar du membre
flox
Administrateur du site
Messages : 158
Enregistré le : 18 janv. 2008 22:05

Re: lire le resultat d'un batch

Message par flox »

Salut Med,
je vient d'essayer dans répertoire autre que la racine du disque:

c:\temp\temp.txt

Code : Tout sélectionner

login
password
cd repertoire
put c:\temp\temp.txt
quit
c:\temp\test.bat

Code : Tout sélectionner

ftp -s:c:\temp\temp.txt 192.168.0.1
pause
Ca à l'air de fonctionner également:

Code : Tout sélectionner

Connecté à 192.168.0.1.
220 Flox FTP Server
Utilisateur (192.168.0.1:(none)) :
331 Password required for utilisateur
 
230 Logged on
ftp> cd download
250 CWD successful. "/repertoire" is current directory.
ftp> put C:\temp\temp.txt
200 Port command successful
150 Opening data channel for file transfer.
226 Transfer OK
ftp : 54 octets envoyés en 0,16 secondes à 0,33 Ko/s.
ftp> quit
221 Goodbye
Vérifie éventuellement tes chemins, ou post le contenu de tes fichiers.

@+
nabli

Re: lire le resultat d'un batch

Message par nabli »

salut flox
c'est vrais le batch fonctionne en le mettant dans des sous dossier
mais le probleme que si le le nom de dossier contient un espace ce ne marche pas
par ex: ftp.exe -s:c:\dossier de travail\ftp.txt > ftp.log
l'invite lit "c:\dossier" seulement et ne lit pas le reste
comment je peut faire eccepter les espaces
Avatar du membre
flox
Administrateur du site
Messages : 158
Enregistré le : 18 janv. 2008 22:05

Re: lire le resultat d'un batch

Message par flox »

Salut nabli,
effectivement ms-dos à du mal avec les noms de dossier long ( + 8 caractères) ou comportant des espaces. (voir FAQ)

Solution 1:

Mettre des guillemets

Code : Tout sélectionner

cd \
cd "Program Files"

Solution 2:

Couper le nom en gardant 6 lettres et en ajoutant ~1

Code : Tout sélectionner

cd \
cd progra~1
Dans ton cas tu pourra mettre :

Code : Tout sélectionner

ftp.exe -s:c:\"dossier de travail"\ftp.txt > ftp.log
@+
Répondre