2017-10-08 6 views
0

J'ai donc plusieurs fichiers .sav que je veux télécharger mon Dropbox je l'ai déjà créé une application et d'avoir un jeton d'accèsDropbox uploader plusieurs fichiers avec cURL?

Ceci est le code que j'ai en ce moment Comment puis-je faire télécharger tous les fichiers avec leur nom à mon Dropbox

curl -X POST https://content.dropboxapi.com/2/files/alpha/upload \ 
    --header 'Authorization: Bearer <access-token>' \ 
    --header 'Content-Type: application/octet-stream' \ 
    --header 'Dropbox-API-Arg: {"path":"","mode":{".tag":"add"}}' \ 
    --data-binary @'test.sav' 
+0

non, malheureusement pelotonner ne peut télécharger 1 fichier, si vous avez besoin de télécharger 2 fichiers ou plus, vous devez utiliser autre chose. Puis-je suggérer libwww? – hanshenrik

Répondre

0

Offrir un essai à une boucle:

$ for i in *.sav; do echo ${i}; done 

Si cela fonctionne, il faut imprimer les noms que vous souhaitez télécharger, puis il suffit de remplacer echo ${i} avec votre commande curl:

$ for i in *.sav; do \ 
curl -X POST https://content.dropboxapi.com/2/files/alpha/upload \ 
--header 'Authorization: Bearer <access-token>' \ 
--header 'Content-Type: application/octet-stream' \ 
--header 'Dropbox-API-Arg: {"path":"","mode":{".tag":"add"}}' \ 
--data-binary "@${i}" 
done 
+0

Renvoie ceci comme une erreur Erreur dans l'appel à la fonction API "files/alpha/upload": En-tête HTTP "Dropbox-API-Arg": impossible de décoder l'entrée comme JSONWarning: Impossible de lire les données du fichier "$ {i} \ ", cela crée un POST vide. – user8408288

+0

J'ai eu une faute de frappe, essayez avec '--data-binary" @ $ {i} "' – nbari