(re)Salut,
ncftp ( [
www.ncftp.com] ) qui fournit les commandes ncftpget ou ncftpput est recursif et porté sous win32 ainsi que cUrl ( [
curl.haxx.se] ).
cUrl -L user:passwd@192.168.10.20/pub/userDir/ > tmplst.txt
pour obtenir une liste de fichiers par exemple.
pour ncftp en mode interractif ca serait :
cd /pub/userDir/
ncftp -R *
pour récupérer toute une arborescence
en utilisant ncftp[get,put] (les outils non-interractifs de ncftp) doit certainememt y a voir une solution. ncftpget -R est récursif (pas testé jusqu'à quel point)
même le ftp en ligne de commande standard de WINXP peut aussi utiliser un script en argument contenant les commandes si tu connais ton arborescence (car il n'est effectivement pas récursif).
pour avoir la syntaxe : "ftp --help" dans une fenêtre de commande.
Ca donnera peut donner quelque chose comme :
ex. : ftp -s:unscript (peut être qu'il faut ajouter -i)
unscript : pouvant contenir les commandes (la syntaxe je suis plus sûr mais c'est comme si c'etait de l'interractif sauf qu'il pioche dans le fichier que tu lui donne en argument, fichier pouvant être construit dynamiquement a l'aide des outils adhoc, cf. plus haut) :
open monFtp.com
user toto passXXXX
cd /pub/userDir/
ls *.c tempLst.txt
bye
Avec ncftpget (en mode -R) je crois que ça suffit mais en utilisant une combinaison des trois, sûr que tu fais tout ce que tu veux.
Y compris la construction dynamique du script a fournir a ftp a partir de tempLst.txt. (for /F %%I in ('find .c tmplist.txt') do ncftpget %%I, par ex.)
Le contre toutes ces methodes c'est que quel quelles soient les mot de passes sont en clair contrairement a du sftp dans lequel tu pourrais utiliser pratiquement les mêmes fontionnalités sans avoir a stocker sur un disque (par échange de clefs) ou a faire transiter sur le réseau un mot de passe que le premier script kiddies bien placé peut sniffer.
Après tout est question d'impératif de sécurité.
Enfin si c'est pour une utilisation professionnelle dans le cadre de développements pourquoi ne pas aller encore plus loin et se diriger vers du client/serveur CVS ou SVN (que je ne connais pas) comme disait Basile.
Les solutions sont nombreuses a toi de voir ou tu es le plus a l'aise, ce que tu peux installer sur les postes, en bref quels sont les objectifs et les contraintes. ^^D-*
pas le temps de me relire trop, jdois y aller, sorry