Existe-t-il un moyen de télécharger vers le stockage box.com via la ligne de commande?

9

J'ai des processus de construction qui sont construits autour des fichiers batch de Windows, et en cas de succès, je souhaite télécharger les résultats sur un compte Box.com. Existe-t-il un moyen de le faire via la ligne de commande? Bien que l'interface glisser-déposer de Box.com soit OK, elle reste la seule étape manuelle de la chaîne.

Rossmcm
la source

Réponses:

7

Box prend en charge WebDAV , FTP (uniquement pour les entreprises et les entreprises) et dispose d'une API .

Vous pouvez donc utiliser un outil pour monter l'entrée WebDAV en tant que lecteur, utiliser FTP à partir de la ligne de commande ou installer quelque chose comme cURL et utiliser l'API à partir de la ligne de commande. Notez que le support principal de l'API est répertorié comme étant via StackOverflow !

Évidemment, si vous avez installé la synchronisation de Box, vous pouvez simplement copier des fichiers dans le dossier de synchronisation également.

Dans Windows \\dav.box.com@SSL\DavWWWRoot\davest l'URN pour se connecter.

Si vous exprimez une préférence dans les commentaires, je vais essayer d'ajouter plus de détails mais je dois courir maintenant.

Julian Knight
la source
Merci pour vos commentaires. Je n'ai pas de compte professionnel, donc webdav ou FTP est sorti. Je pense que peut-être utiliser un renifleur de paquets pour regarder ce qui se passe lorsque je télécharge un fichier à l'aide de l'interface Web.
rossmcm
1
Jetez un œil à l'API, puisque CURL est répertorié comme une "interface", il devrait être possible de faire ce que vous voulez.
Julian Knight
1
Merci. Je viens de l'essayer avec un fichier de 12 Mo (obtenu cURL de confusedbycode.com/curl ) et cela s'est passé sans accroc en utilisant l'exemple de ligne de commande fourni par @phobic:curl -u [email protected]:mypassword -T local_file_path https://dav.box.com/dav/remote_file_name
rossmcm
Fab! J'ai vu qu'il existe également une WinCURL si vous devez également utiliser les paramètres IE. De toute évidence, dans ce cas, vous ne le faites pas.
Julian Knight
9

Désolé, je ne peux pas commenter (nécessite 50 points de réputation). Comme Julian l'a mentionné, vous pouvez utiliser WebDAV. Ceci est également activé pour les comptes non professionnels; utilisez l'URL https://dav.box.com/dav . Le dossier ne semble pas être monté dans Windows: http://www.onemetric.com.au/Documentation/Mounting-A-WebDAV-Share-Windows-7 Je pense que c'est un problème de serveur Web. Mais vous pouvez utiliser curl:

curl -u [email protected]:mypassword -T local_file_path  https://dav.box.com/dav/remote_file_name
curl -u [email protected]:mypassword  https://dav.box.com/dav/remote_file_name --output download_file_path
phobique
la source
Pour monter WebDAV dans Windows, vous devez utiliser le format que j'ai montré dans ma réponse. Alternativement, il existe des outils tiers qui vous aideront.
Julian Knight
+1 pour ce travail sur la machine Linux / osx / * nix
PressingOnAlways
De plus, s'il y a des espaces dans le remote_file_nameou un dossier, vous devez encoder avec %20par exemple: remote%20file%20name.
Rekovni
1

J'ai écrit PrintToBox pour résoudre ce besoin pour les entreprises utilisant Linux / Unix. Il utilise le SDK Java de Box, vous devez donc installer JDK 7 ou JDK 8. J'ai l'intention de le porter sur Windows et sur Box Platform (pour profiter de l'App Auth / App Users) mais il n'est pas encore là (aide recherchée, heh).

Stephen
la source
1

Si vous avez travaillé avec le langage R, il y a un joli paquet sur https://github.com/brendan-r/boxr pour interagir avec box via la ligne de commande.

Samir
la source
0

Vous pouvez trouver Couchdrop utile pour cela. Couchdrop vous permet de SCP, Rsync et SFTP to Box depuis votre terminal. Il utilise les applications natives termianl, vous n'avez donc pas besoin d'installer de nouveaux logiciels. Le tout avec la syntaxe standard que vous connaissez déjà.

https://couchdrop.io

Jayden Bartram
la source