[FTP]Transferer une liste de fichiers
Résolu/Fermé
ViDikk
Messages postés
69
Date d'inscription
jeudi 27 janvier 2011
Statut
Membre
Dernière intervention
24 février 2017
-
25 févr. 2012 à 00:02
gm - 27 févr. 2012 à 09:42
gm - 27 févr. 2012 à 09:42
A voir également:
- [FTP]Transferer une liste de fichiers
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Wetransfer gratuit fichiers lourd - Guide
- Explorateur de fichiers - Guide
- Liste de diffusion whatsapp - Guide
2 réponses
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
Modifié par mamiemando le 25/02/2012 à 01:00
Modifié par mamiemando le 25/02/2012 à 01:00
Ça n'a pas de sens de mettre des commandes ftp dans un script shell. Il faut éventuellement que tu passes tes directives ftp en paramètre de la commande ftp (si elle peut lire dans un fichier) ou par le biais de l'opérateur << EOF.
Par exemple avec lftp tu pourrais écrire un truc du genre, mais je suis pas sûre que la commande ftp le permette :
Bonne chance
Par exemple avec lftp tu pourrais écrire un truc du genre, mais je suis pas sûre que la commande ftp le permette :
#!/bin/sh echo "user ?" read user echo "password ?" read password echo "host ?" read host echo "file ?" read file lftp -u $user,$password $host << EOF cd /toto put $file exit EOF
Bonne chance
ViDikk
Messages postés
69
Date d'inscription
jeudi 27 janvier 2011
Statut
Membre
Dernière intervention
24 février 2017
Modifié par ViDikk le 27/02/2012 à 01:18
Modifié par ViDikk le 27/02/2012 à 01:18
Bonjour, merci d'avoir pris le temps de me répondre.
J'utilise déjà la commande ftp avec l'opérateur "EOF" (chez moi c'est EOT). Mon problème n'est pas pour transférer un fichier par FTP, mais de transférer tous les fichiers d'un dossier ou le dossier en entier.
EDIT : Je viens de trouver la solution: Il suffit d'utiliser la commande "mput" avec comme paramètre "*" pour indiquer tous les fichiers du dossier dans lequel on se situe. Voilà ca que ça donne pour moi :
En espérant que ça en aidera d'autres !
Merci pour l'aide !
J'utilise déjà la commande ftp avec l'opérateur "EOF" (chez moi c'est EOT). Mon problème n'est pas pour transférer un fichier par FTP, mais de transférer tous les fichiers d'un dossier ou le dossier en entier.
EDIT : Je viens de trouver la solution: Il suffit d'utiliser la commande "mput" avec comme paramètre "*" pour indiquer tous les fichiers du dossier dans lequel on se situe. Voilà ca que ça donne pour moi :
# On crée le repertoire où l'on stocke les sauvegardes locales mkdir $HOME/$USFILE/$DATEJOUR # On s'y place dedans pour faciliter la commande FTP par la suite cd /$HOME/$USFILE/$DATEJOUR # On crée une archive pour chaque dossier LISTCLIENTS='ls $HOME/$USPATH/' for x in $LISTCLIENTS; do echo "compression de $x :" tar -czf $HOME/$USFILE/$DATEJOUR/$x.tar.gz $HOME/$USPATH/$x done # On envoi les fichiers du dossier courant vers un serveur distant ftp -pnv $REMOTESERVER << EOT user $USERNAME $PASSWORD prompt mkdir $REMOTEPATH/$DATEJOUR cd $REMOTEPATH/$DATEJOUR mput * bye EOT
En espérant que ça en aidera d'autres !
Merci pour l'aide !