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

Unix Discussion :

[UNIX] pb avec curl


Sujet :

Unix

  1. #1
    Membre régulier
    Homme Profil pro
    Aucun
    Inscrit en
    Avril 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Aucun

    Informations forums :
    Inscription : Avril 2008
    Messages : 78
    Points : 79
    Points
    79
    Par défaut [UNIX] pb avec curl
    Bonjour à tous

    Je ne comprends pas la commande curl sous Mac OS X. Je l'utilise pour uploader et downloader des fichiers depuis/vers la Freebox HD (son disque dur).
    Pour uploader, j'utilise la commande suivante.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    curl --upload-file /Users/MyAccount/Desktop/aFile.zip --url ftp://freebox:freebox@hd1.freebox.fr/Disque dur/Enregistrements/
    Le fichier aFile.zip est bien transféré vers le répertoire Enregistrements. La console affiche des statistiques que j'aimerais exploiter. Comment faire ?
    J'ai créé un pipe pour détourner la sortie standard. Sans résultat. En procédant de la même façon pour la sortie erreur, les statistiques ne s'affichent plus dans la console et je ne le récupère rien.

    En ce qui concerne le downloading, je ne parviens pas à l'utiliser malgré mes recherches sur le net.

    Par avance merci de votre aide.

  2. #2
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Salut,

    Extrait du man curl :

    --stderr <file>
    Redirect all writes to stderr to the specified file instead. If the file name is a plain '-', it is instead written to stdout. This option has no point when
    you're using a shell with decent redirecting capabilities.

    If this option is used several times, the last one will be used.



    PS. Attention aux espaces dans les chemins
    $ man woman
    Il n'y a pas de page de manuel pour woman.

  3. #3
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    J'avais oublié aussi l'option "-w", à partir de laquelle tu peux définir ce que tu veux afficher sur la sortie standard :

    -w/--write-out <format>
    Defines what to display on stdout after a completed and successful operation. The format is a string that may contain plain text mixed with any number of
    variables. The string can be specified as "string", to get read from a particular file you specify it "@filename" and to tell curl to read the format from
    stdin you write "@-".
    $ man woman
    Il n'y a pas de page de manuel pour woman.

  4. #4
    Membre régulier
    Homme Profil pro
    Aucun
    Inscrit en
    Avril 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Aucun

    Informations forums :
    Inscription : Avril 2008
    Messages : 78
    Points : 79
    Points
    79
    Par défaut
    Premièrement, merci de ton aide.

    La commande ne fonctionne pas. Le seul résultat que je constate est la disparition de la sortie vers la console.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    curl -stdout /Users/MyAccount/Desktop/Echo.txt -T /Users/MyAccount/Desktop/aFile.zip --url ftp://freebox:freebox@hd1.freebox.fr/Disque dur/Enregistrements/
    Sans cette option, j'obtient sur la console


    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed

    0 86.3M 0 0 0 16384 0 130k 0:11:17 --:--:-- 0:11:17 130k
    2 86.3M 0 0 2 1776k 0 2705k 0:00:32 --:--:-- 0:00:32 3295k
    5 86.3M 0 0 5 4571k 0 2763k 0:00:32 0:00:01 0:00:31 2973k
    8 86.3M 0 0 8 7616k 0 2854k 0:00:30 0:00:02 0:00:28 2985k

    etc..

    Je ne comprend pas pourquoi.

    PS: J'utilise la classe NSTask de Cocoa pour wrapper cette commande.

  5. #5
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Citation Envoyé par XDev1 Voir le message
    La commande ne fonctionne pas. Le seul résultat que je constate est la disparition de la sortie vers la console.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    curl <s>-stdout</s> /Users/MyAccount/Desktop/Echo.txt -T /Users/MyAccount/Desktop/aFile.zip --url ftp://freebox:freebox@hd1.freebox.fr/Disque dur/Enregistrements/
    Alors déjà ce n'est pas "-stdout" mais "--stderr"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    curl --stderr fichlog /Users/MyAccount/Desktop/Echo.txt -T /Users/MyAccount/Desktop/aFile.zip --url ftp://freebox:freebox@hd1.freebox.fr/Disque dur/Enregistrements/
    Ou, pour pouvoir parser la sortie (avec un pipe en fin...) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    curl --stderr -  /Users/MyAccount/Desktop/Echo.txt -T /Users/MyAccount/Desktop/aFile.zip --url ftp://freebox:freebox@hd1.freebox.fr/Disque dur/Enregistrements/ | grep "motif"
    $ man woman
    Il n'y a pas de page de manuel pour woman.

  6. #6
    Membre régulier
    Homme Profil pro
    Aucun
    Inscrit en
    Avril 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Aucun

    Informations forums :
    Inscription : Avril 2008
    Messages : 78
    Points : 79
    Points
    79
    Par défaut
    Merci.

    Par contre, sais-tu comment construire la commande (curl) pour downloader?
    La commande wget n'existe pas sous MacOS X (Darwin).

    Merci de ton aide.

  7. #7
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    curl -O ftp://freebox:freebox@hd1.freebox.fr/Disque\ dur/Enregistrements/ton_fichier.qqchose
    $ man woman
    Il n'y a pas de page de manuel pour woman.

Discussions similaires

  1. problem avec cURL
    Par Jérémy Lefevre dans le forum Bibliothèques
    Réponses: 3
    Dernier message: 16/05/2007, 23h37
  2. [cURL] Tester le temps de la dernière requête avec cURL
    Par brasco06 dans le forum Bibliothèques et frameworks
    Réponses: 16
    Dernier message: 13/10/2006, 17h11
  3. Réponses: 25
    Dernier message: 05/07/2006, 16h46
  4. [Unix] Pb avec le spool de Sqlplus
    Par dyvim dans le forum Sql*Plus
    Réponses: 3
    Dernier message: 22/06/2006, 17h01
  5. [cURL] Gérer le proxy avec curl
    Par DaSoul dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 24/03/2006, 23h18

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