Utilisation FTP avec instruction MS DOS

Résolu
gval Messages postés 38 Statut Membre -  
gval Messages postés 38 Statut Membre -
Bonjour,

Je lance une procédure "DOS" depuis un PC serveur, sous Windows XP, qui récupère des fichiers sur une plate-forme AS400.
Pour ce faire j'utilise des instructions FTP qui fonctionnent et me ramènent les fichiers souhaités. Mais si le fichier n'existe pas sur l'AS400, la procédure me ramène un fichier vide, ce que je ne voudrais pas...
A l'intérieur du script FTP j'utilise l'instruction "get"...( idem si "recv" !)
Dans la procédure ".bat" des instructions de type
"ftp -i -n -s:D:\FROM400\PGM\FTP2_trans_vente.pro 192.168.1.9"


Je voudrais que FTP NE ME ramène PAS de fichier sur mon serveur PC, si celui-ci n'existe pas sur l'AS400, est-ce possible avec FTP ? Comment faire ?

Ou alors
est-il possible de tester si le fichier ramené est vide avec des instructions "DOS" ?
( Comme RTVMBRD sur AS400 )
soit utiliser des astuces de copy ou autres ?

Merci vos réponses

Windows XP
Répondre
A voir également:

3 réponses

dubcek Messages postés 19021 Statut Contributeur 5 637
 
voilà un exemple
C:> copy /y NUL vente.txt 
        1 fichier(s) copié(s). 
C:> cc 
fichier vente.txt est vide 
C:> echo aaaaaaaa>vente.txt 
C:> cc 
fichier vente.txt non vide 
C:> type cc.bat 
@echo off 
for %%F in (vente.txt) do ( 
        if %%~zF EQU 0 ( 
                echo fichier %%F est vide 
        ) else ( 
                echo fichier %%F non vide 
        ) 
) 
1
gval Messages postés 38 Statut Membre
 
Ok super ça marche.
Merci de votre aide.
0
dubcek Messages postés 19021 Statut Contributeur 5 637
 
hello
depuis ftp, je ne crois pas, mais en DOS, on peut tester la taille.
help for
...
  %~zI        - étend %I en taille du fichier
...
0
gval Messages postés 38 Statut Membre
 
Merci votre réponse.
Mais peu familier du DOS, j'ai du mal avec la syntaxe à employer.
Vu le "HELP" mais insuffisant

Si mon fichier s'appelle "vente.txt" quelle est la syntaxe à employer pour tester la taille avec votre exemple.
0