IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

[CURL] Transférer une partie d'un fichier sur un serveur ftp


Sujet :

Administration système

  1. #1
    Membre habitué
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2009
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juillet 2009
    Messages : 218
    Points : 130
    Points
    130
    Par défaut [CURL] Transférer une partie d'un fichier sur un serveur ftp
    Bonjour,

    J'utilise curl pour tester la vitesse de transfert et de téléchargement depuis l'un de mes serveur et un serveur ftp.

    Je ai créé un fichier de 2 Go à télécharger et un fichier de format de sortie curl.

    Le fichier transféré depuis le serveur de test est nommé bandwidth_upload; et lorsque le transfert commence, j'ai un fichier hiden du côté du serveur ftp ".in.bandwidth_upload.". Et si je tue le processus de transfert, le fichier est effacé du serveur ftp et le client (serveur/machine effectuant le transfert) n'affiche pas la sortie telle que j'ai définie dans mon format de sortie.

    Mais quand je fais la même chose pour un test de téléchargement, je peux avoir un fichier partiellement téléchargé sur le client, et la sortie telle que définie dans le format de sortie.

    Je ai essayé plusieurs façons pour le téléchargement, mais je peux obtenir la sortie si le transfert ne va pas jusqu'à la fin, or je ne veux pas attendre la fin du transfert des 2 Go de données.

    Voici ce j'ai essayé (comme vous pouvez le voir j'ai même utilisé l'option -a) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    curl -a --user test:password -w @/home/user/curl_upload_format.txt -T /path_to_file/bandwidth_upload ftp://my_ftp_server/
    Mon fichier "curl_upload_format.txt"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    time_namelookup:  %{time_namelookup}\n
    time_connect:  %{time_connect}\n
    time_pretransfer:  %{time_pretransfer}\n
    time_redirect:  %{time_redirect}\n
    time_starttransfer:  %{time_starttransfer}\n
                ----------\n
                ----------\n
    time_total:  %{time_total}\n
                ----------\n
                ----------\n
    speed_upload:  %{speed_upload}\n
                ----------\n
                ----------\n
    size_upload:  %{size_upload}\n
    Je voudrais pouvoir arrêter le transfert au milieu et avoir une partie de fichier écrite sur le serveur ftp et la sortie comme indiqué dans mon format de sortie. J'ai essayé d'utiliser l'option -a et j'ai dans ce une sortie du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    time_namelookup:  0.512
    time_connect:  0.890
    time_pretransfer:  0.000
    time_redirect:  0.000
    time_starttransfer:  0.000
                    ----------
                    ----------
    time_total:  5.311
                    ----------
                    ----------
    speed_upload:  0.000
                    ----------
                    ----------
    size_upload:  0
    curl: (25) Failed FTP upload: 550
    le code d'erreur 25 signifie que le serveur n'a pas pu écrire/stocker les données, et ce n'est pas un problème d'espace ou de droits, car en enlevant l'option ça passe.

    S'il vous plaît sauriez-vous comment cela est possible avec curl.

    Merci beaucoup.

    Cordialement.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    505
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Août 2008
    Messages : 505
    Points : 712
    Points
    712
    Par défaut
    Bonjour,

    Moi j'avoue ne pas comprendre l'intéret du -a ici. Les options que j''essaierai ici, c'est -f pour éviter les erreurs, et et -m, pour contrôler le temps maximum du test. En tout cas, c'est ce qui me vient à la lecture du man de curl.

  3. #3
    Membre habitué
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2009
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juillet 2009
    Messages : 218
    Points : 130
    Points
    130
    Par défaut
    Bonjour,

    L'option -f produit par défaut l'effet que je cherche à éviter déjà : aucune sortie en cas d'erreur. Et de plus elle est plus adaptée au HTTP.

    Je ne cherche pas à effacer l'erreur, mais à éviter que le programme considère l’interruption du transfert comme une erreur, et m'affiche la sortie et écrit la quantité de données transférées avant le Ctrl+C. Ca marche bien pour le téléchargement/download.

    J'ai essayé l'option -a parce que je me suis dit qu'en concaténant, il pourrait écrire au fur et à mesure et s'arrêter à une certaine taille de fichier lorsque l'interruption survient.

    C'est vrai que l'option -m répond à la logique que je cherche. Elle m'a échappé.

    Je vais essayer voir avec.

    Cordialement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Transférer une requête modifiée dans SAS sur le serveur VAX/VMS
    Par atani12 dans le forum Administration et Installation
    Réponses: 8
    Dernier message: 04/06/2008, 11h00
  2. [cURL] Manipulation de fichier sur un serveur FTP
    Par {Anthony} dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 14/01/2008, 09h48
  3. Envoi de fichier sur un serveur FTP
    Par pepe2006 dans le forum Access
    Réponses: 6
    Dernier message: 02/12/2005, 10h19
  4. Réponses: 4
    Dernier message: 15/09/2005, 13h27
  5. [FTP] Test de l'existence d'un fichier sur un serveur ftp
    Par lapartdombre dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 01/08/2005, 14h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo