Rechercher : dans
Par :

Ftp de Unix vers Windows

Dernière réponse le 13 nov 2009 à 17:12:15 OlivrT, le 12 nov 2009 à 10:00:57 
 Signaler ce message aux modérateurs

Bonjour,
je souhaiterai faire un script qui envoie mon fichier qui se trouve sur un serveur unix vers un serveur Windows. J'essaye de faire un ftp depuis notre serveur unix mais je n'y arrive pas :-(
Je trouve de tout sur les exemples du net mais je ne sais plus quoi choisir, certains écrivent :
ftp
d'autre ftp -n -v
etc, ...

voici ce que j'ai fait, ce qui est très certainement érroné

echo "fichier a envoyer sur Windows :"
read fichier
IPSVRWIN="1.1.1.1"
USERWIN="test"
PASSWIN="test"
DIR_UNIX=/data/work/files
DIR_WIN=/$IPSVRWIN/Mes fichiers/Sortie
/usr/bin/ftp -n -v
open IPSVRWIN
user $USERWIN $PASSWIN
binary
cd $DIR_WIN
lcd $DIR_UNIX
put $fichier
quit

Configuration: Windows XP
Firefox 3.5.5

Meilleures réponses pour « ftp de Unix vers Windows » dans :
Les principaux process de Ingres (Unix & Windows) VoirLes principaux processes Ingres (Unix et Windows) Name Server - Serveur de noms : iigcn Communications Server - Ingres/Net : iigcc Recovery - Gestion des transactions : dmfrcp (ou iidbms (dmfrcp) sous Unix/Linux) Archiver - Gestion de la...
Sed - Conversion retours chariots DOS (CRLF) / UNIX (LF) VoirConversion format de fichier DOS UNIX / UNIX DOS Préambule Ce qu'il faut savoir Conversion DOS vers UNIX Conversion UNIX vers DOS Préambule Il existe déjà des utilitaires (dos2unix et unix2dos) qui s'acquittent très bien ce...
Télécharger CygWin VoirCygwin est un environnement UNIX pour Windows composé: d'un shell Unix d'une librairie dynamique (DLL) chargée de fournir une couche d'émulation Unix pour le système Windows d'un ensemble de librairies, sources et exécutables adaptés à Cygwin...
Télécharger Windows 7 Upgrade Advisor VoirCe logiciel analysera votre PC et vous informera de sa compatibilité ou de son incompatibilité avec Windows 7. Si votre système n'est pas compatible le logiciel vous informera des modifications à apporter afin de le rendre compatible Windows 7.
Télécharger Unison VoirUnison est un logiciel de synchronisation de répertoires. Il est capable de travailler de manière bidirectionnelle, c'est à dire que vous pouvez effectuer des modifications dans les deux répertoires, et Unison les synchronisation...
Les commandes FTP VoirLe protocole FTP FTP (File Transfer Protocol) est un protocole, c'est-à-dire un langage standard de communication entre deux machines, permettant à des machines de types différents (ou dont le système d'exploitation est différent) de...
Utilisation de la commande ftp VoirLe protocole FTP FTP (File Transfer Protocol) est un protocole, c'est-à-dire un langage standard de communication entre deux machines, permettant à des machines de types différents (ou dont le système d'exploitation est différent) de transférer des...

1

mamiemando, le 12 nov 2009 à 11:03:14
  • +1

Le truc c'est que les commandes ftp que tu écris dans ton script shell n'ont un sens qu'en ftp, pas en shell... Ces commandes doivent donc être passées en paramètres à ftp et non en tant qu'instruction shell. Il faudrait faire (je pense) un truc dans ce genre :
http://forum.hardware.fr/...

Bonne chance

Répondre à mamiemando

2

OlivrT, le 12 nov 2009 à 11:33:23

Sans vouloir te vexer je ne comprends pas bien ta réponse :-/
tu es en train de me dire qu'on ne peut faire du ftp en shell/bash ?

Répondre à OlivrT

3

dubcek, le 12 nov 2009 à 12:14:41
  • +1

Hello
il faut rediriger le ftp pour qu'il lise les commandes dans le script
/usr/bin/ftp -n -v << EOF
open IPSVRWIN
user $USERWIN $PASSWIN
binary
cd $DIR_WIN
lcd $DIR_UNIX
put $fichier
quit
EOF

Répondre à dubcek

4

mamiemando, le 12 nov 2009 à 19:16:54

Je suis en train de dire qu'une instruction ftp n'est pas une instruction shell. Tel que tu l'as écris, tes instructions ftp ne sont pas passées à ftp mais à ton interpréteur shell. Tout ce passe exactement comme si tu tapais successivement toutes ces commandes derrière ton invite de commande shell. Or seule l'instruction "/usr/bin/ftp -n -v" est compréhensible par ton shell, d'où l'erreur.

Si tu adoptes une méthode comme celle proposée par le lien que je t'ai donné (ou celle proposée par dubcek), tu rediriges bien des instructions ftp (open etc...) dans la commande ftp, et elles sont donc correctement passées à ftp et donc correctement interprétées.

Dans le lien que je t'ai donné, on redirige un fichier contenant des instructions ftp dans la commande ftp. Dubcek a une méthode peut-être plus parlante (en tout cas plus proche de ce que tu as commencé à faire), il redirige la suite du script shell (jusqu'au EOF) dans l'entrée standard (lue par ftp).

Ce qu'il faut bien voir, c'est que sous linux, tout est fichier. Ainsi tu peux indifféremment rediriger dans une commande un fichier au sens habituel du terme ou ce que tu saisis au clavier (l'entrée standard qui n'est autre que le fichier /dev/stdin), et bien d'autres choses encore.

Bonne chance

Répondre à mamiemando

5

OlivrT, le 13 nov 2009 à 07:46:23

Merci !

Répondre à OlivrT

6

 mamiemando, le 13 nov 2009 à 17:12:15

De rien et bonne continuation :-)

Répondre à mamiemando