batch et ftp

batch et ftp - Shell/Batch - Programmation

Marsh Posté le 04-06-2004 à 21:01:04    

salut,
 
je voudrais eccrire un fichier .bat pour envoyer sur un ftp des fichiers de ma machine. j'ai eu beau chercher, j'ai rien trouve qui tourne correctement
je pensais faire un truc comme ca, mais ca va pas :  
 
ftp
open ftp.truc.fr
user
pass
bin
mput *.cpp
quit
 
une idee ?
merci d'avance

Reply

Marsh Posté le 04-06-2004 à 21:01:04   

Reply

Marsh Posté le 04-06-2004 à 21:21:00    

Utilise la commande ftp -s:NomDeFichier
 
En gros tu mets toutes tes commandes dans un fichier test.dat ou ce que tu veux.
 
ex test.dat :

Code :
  1. open ftp.truc.fr
  2. login
  3. pass
  4. tes commandes
  5. bye


 
et dans le fichier .bat :

Code :
  1. ftp -s:test.dat


 
 
Et là ça devrait marcher.
A+

Reply

Marsh Posté le 04-06-2004 à 21:33:31    

j'ai fait un truc assez similaire :  
// ULftp.bat
ftp -i -n -v -s:ULftp.txt
// ULftp.txt
open machin
user xxxxxxx    // sans user, ca ne marchait pas ...
xxxxxx // pass
...
bye
 
merci a toi !

Reply

Marsh Posté le 08-06-2004 à 15:36:32    

G un probleme.Ds le fichier.dat je met ca:
set I=2
open 128.%I%.10.26
Le truc c'est kil m'affiche ds l'invite de commande open 128.%I%.10.26 et non 128.2.10.26
Pour essayé ma synthaxe g creé un .bat et j'ai mis:
set I=2
ftp 128.%I%.10.26
et la ca a marché il m'a ouvert un ftp sur 128.2.10.26
Ke dois je faire pour que ca marche avec le fichier.dat???Merci

Reply

Marsh Posté le 08-06-2004 à 15:39:14    

KoosMos a écrit :

G un probleme.Ds le fichier.dat je met ca:
set I=2
open 128.%I%.10.26
Le truc c'est kil m'affiche ds l'invite de commande open 128.%I%.10.26 et non 128.2.10.26
Pour essayé ma synthaxe g creé un .bat et j'ai mis:
set I=2
ftp 128.%I%.10.26
et la ca a marché il m'a ouvert un ftp sur 128.2.10.26
Ke dois je faire pour que ca marche avec le fichier.dat???Merci


 
Essaye avec open 128.%%I%%.10.26


---------------
"Nous allons reformater les français" © Nicolas Sarkozy
Reply

Marsh Posté le 08-06-2004 à 15:44:27    

ds le fichier.dat g mis:
set I=2
open 128.%%I%%.10.26
Il ma mis comme erreur ftp>set I commande non valide
Donc j'ai mis la variable ds le fichier.bat
Mais ca na tjr pa marché

Reply

Marsh Posté le 08-06-2004 à 15:47:00    

KoosMos a écrit :

ds le fichier.dat g mis:
set I=2
open 128.%%I%%.10.26
Il ma mis comme erreur ftp>set I commande non valide
Donc j'ai mis la variable ds le fichier.bat
Mais ca na tjr pa marché


 
Ah ok, c'est normal...
L'interpréteur FTP ne comprend pas le batch.
 
Ecrit ça à la place: !set I=2
 
Le ! indique à FTP que tu veux exécuter une commande DOS.


Message édité par kfman le 08-06-2004 à 15:47:36

---------------
"Nous allons reformater les français" © Nicolas Sarkozy
Reply

Marsh Posté le 08-06-2004 à 15:48:38    

J'ai ecrit !set I=2 ds le fichier.dat mais j'ai tjr l'erreur open 128.%%I%%.10.26

Reply

Marsh Posté le 08-06-2004 à 15:50:28    

Bon je viens de vérifier.
FTP n'évalue pas les expressions % %.
 
Un solution serait de créer un fichier txt à utiliser avec l'option FTP /s, puis de modifier ce fichier au besoin avec un utitaire comme sed.
 
Sinon dans quel contexte te sers-tu de FTP ?
 
EDIT:
 
Ou alors utiliser la syntaxe: ftp <ton adresse> /s tontxt.txt


Message édité par kfman le 08-06-2004 à 15:54:33

---------------
"Nous allons reformater les français" © Nicolas Sarkozy
Reply

Marsh Posté le 08-06-2004 à 15:54:35    

J'ai besoin de recuperé plusieurs fichiers sur des pc ki on tous une adresse 128.X.10.26.Je voulais ensuite faire une boucle for incrémenté de 1 ki va de 2 a 97 (d'ou I=2)

Reply

Marsh Posté le 08-06-2004 à 15:54:35   

Reply

Marsh Posté le 08-06-2004 à 16:16:57    

Pour le bat:
 

Citation :

@echo off
for /L %%i in (2,1,97) do ftp -s:ftp.txt 128.%%i.10.26  
pause>nul


 
Puis tu fait un txt:
 

Citation :

user xxx  
pass xxx
etc...


---------------
"Nous allons reformater les français" © Nicolas Sarkozy
Reply

Marsh Posté le 08-06-2004 à 16:33:00    

Ds le .bat
 
@echo off
for /L %%i in (2,1,4) do ftp -s:C:\Documents and Settings\SODECCO\Bureau\Nouveau dossier\script.txt 128.%%i.26.1
pause>nul
 
Ds le .txt
 
user ***
pass ***
cd ../..
cd mcafee
bin
prompt
mget 128*
bye
 
Ca marche tjr pa

Reply

Marsh Posté le 08-06-2004 à 16:35:04    

Bah mince j'ai pourtant essayé... Toujours la même erreur ?
 
- Met le @echo off en remarque.
- Entoure de guillemets "C:\Doc...\script.txt"


Message édité par kfman le 08-06-2004 à 16:35:48

---------------
"Nous allons reformater les français" © Nicolas Sarkozy
Reply

Marsh Posté le 08-06-2004 à 16:37:05    

G pa la meme erreur mais g l'invite de commande qui me montre la synthaxe de la commande ftp

Reply

Marsh Posté le 08-06-2004 à 16:38:45    

En mettan les guillemets g l'invite de commande ki est affiche juste un ecran noir

Reply

Marsh Posté le 08-06-2004 à 16:40:21    

Comment ça ?
Tu peux me faire un copier coller ?


---------------
"Nous allons reformater les français" © Nicolas Sarkozy
Reply

Marsh Posté le 08-06-2004 à 16:41:47    

Je t'ai mis tous ce ke j'avais ecrit ds le .bat et le .txt ds l'un de mes topic precedent

Reply

Marsh Posté le 08-06-2004 à 16:44:39    

J'ai un peu laissé tourné l'invite de commande et au bout d'un certain tem ce m"a affiché  
>ftp: connect :Numero d'erreur inconnu
ftp> user ***
non connecté
ftp> pass ***
commande non valide
 

Reply

Marsh Posté le 08-06-2004 à 16:47:33    

Connect me parrait bizzare.
 
A tout hasard met ton script dans un autre répertoire pour avoir un chemin plus court et sans espace et enlève les guillemets.
 
T sous kel OS au fait ?


Message édité par kfman le 08-06-2004 à 16:49:03

---------------
"Nous allons reformater les français" © Nicolas Sarkozy
Reply

Marsh Posté le 08-06-2004 à 16:47:35    

Apparement il ne se connecte a l'adresse ip:128.%%i.10.26
Je pense ke c'est une erreur ds la ligne for

Reply

Marsh Posté le 08-06-2004 à 16:51:52    

Sinon c'est pas grave je le ferait en C chez moi.Merci bocou pour ton aide.G appris pas mal de chose en batch (vu ke ca fait seulement depuis 3h que j'essaye d'en faire).Encore merci

Reply

Marsh Posté le 08-06-2004 à 16:53:09    

Aucun problème.
Mais tu peux poursuivre si tu veux, hein :o


Message édité par kfman le 08-06-2004 à 16:54:04

---------------
"Nous allons reformater les français" © Nicolas Sarkozy
Reply

Marsh Posté le 08-06-2004 à 17:00:00    

La je suis au boulot (en faite en stage) et la je pars ds 5 minutes et je rentre pa directement chez moi donc je vera ca demain.Mais comme g di c'est pa grave c'etai surtou pour mon rapport de stage.Encore merci.

Reply

Marsh Posté le 20-07-2004 à 14:21:07    

kkun a trouve comment faire??
g le mm pb mais moi g des fichiers a recuperer et ils viennent dune boucle
g essaye de mettre ds le .dat  
open ...
get %parametre%
...

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed